يحتوي هذا المستودع على قالب تطبيق ويب مكدس كامل يتم تشغيله على حزمة حلول FARM، والتي تمثل:
يعد مكدس FARM امتدادًا أو أقل لمكدس LAMP مع هذه التغييرات الملحوظة:
يتم استخدام Flask لكتابة واجهات برمجة تطبيقات الويب/البرامج الوسيطة التي يمكنها التواصل بين واجهة مستخدم الويب والواجهة الخلفية للويب/قاعدة البيانات. هذا هو جوهر التطبيق بأكمله الذي يقوم بلصق أجزاء تطبيق المكدس الكامل معًا.
لاحظ أن هذا القالب المحدد لا يستخدم ORM، وبدلاً من ذلك يستخدم وحدة pymysql
. وهذا يعني أن المطورين بحاجة إلى كتابة استعلامات SQL، ولكن يمكنهم زيادة تعقيد الاستعلامات التي يحتاجونها للتشغيل على قاعدة البيانات.
AWS هي الخدمة السحابية التي يمكن استضافة التطبيق عليها. يمكننا استضافة حزمة البرامج بأكملها على الخدمات التالية:
وهذا يعني أنه يمكن للمطورين الاحتفاظ بكل شيء على نظام أساسي واحد وتقليل عمل DevOps / تكنولوجيا المعلومات.
React هو الإطار الذي تعمل عليه واجهة مستخدم الويب. يمكن أيضًا تشغيل تطبيق React على AWS Lambda باستخدام NodeJS.
يستخدم هذا القالب JavaScript / JSX، ولكن يمكن استخدام TypeScript أيضًا.
MySQL هي قاعدة البيانات العلائقية التي تستخدمها الواجهة الخلفية للويب. يمكن أيضًا استضافة هذا على AWS من خلال خدمة RDS الخاصة بها.
لتشغيل تطبيق الويب هذا، يجب القيام بما يلي:
db/
لإعداد مثيل MySQL، اتبع الخطوات التالية:
mysql
على واجهة سطر أوامر Linux.sample.sql
داخل المثيل. سيقوم بإنشاء مخطط يسمى SampleInventory
ثم يقوم بتهيئة جدول يسمى Inventory
. يمكن العثور على قاعدة التعليمات البرمجية لـ Flask API في دليل api/
.
virtualenv farm-stack
بعد الانتقال إلى هذا الدليل.source farm-stack/bin/activate
api/
وقم بتشغيل pip3 install -r requirements.txt
لتثبيت جميع وحدات Python اللازمة لواجهة برمجة التطبيقات.dbcreds.py
في دليل api/
وقم بتحرير بيانات اعتماد قاعدة البيانات حسب الحاجة. python3 app.py
لتشغيل واجهة برمجة التطبيقات على http://localhost:8080
. يمكن العثور على قاعدة التعليمات البرمجية لواجهة مستخدم React في دليل ui/
. يستخدم هذا القالب yarn
كمدير للحزم الخاصة به؛ من المهم ألا يخلط المطورون بين مديري الحزم الآخرين مثل npm
عند إضافة وحدات نمطية جديدة.
لاحظ أن الحزم مثل react-bootstrap
مفقودة من هذا القالب.
yarn install
لتثبيت كافة التبعيات المطلوبة. yarn start
في التشغيل في وضع التطوير.http://localhost:3000
على المتصفح.