
expo-essentials عبارة عن قالب Kickass مبني على الجزء العلوي من المعرض ، ويحتوي على بنية مجلد قابلة للإدارة ، وأجنحة الاختبار ، والميزات الأساسية لتشغيلك وتشغيلها على تطبيقك التالي.




(... والكثير منهم قريبًا!)
$ cd client
$ npm start
$ docker-compose up --build
| يأمر | وصف |
|---|---|
npm start | ابدأ معرض خادم مترو |
npm run android | يبدأ التطبيق في محاكي Android |
npm run ios | يبدأ التطبيق في محاكي iOS |
npm run web | يبدأ التطبيق في متصفح الويب |
npm run test | التطوير النشط للاختبارات ، ومشاهدة الملفات للتغييرات وإعادة تشغيل جميع الاختبارات |
npm run testDebug | Debug و Console.logs وأعد إعادة تشغيل الملف الذي تم تغييره فقط |
npm run testFinal | يعرض تغطية الرمز في CLI ويقوم بتحديث تغطية الكود HTML |
npm run updateSnapshots | عند تحديث شاشة/مكون ، ستلقي لقطات الاختبار خطأً ، وهذا يقوم بتحديثها |
npm run eject | قم بإخراج تطبيق المعرض لمشاريع Android و iOS الأصلية (الحذر: هذا الإجراء لا رجعة فيه) |
| يأمر | وصف |
|---|---|
npm run start:dev | يبدأ الخادم بتكوين التطوير ، ويقوم بإعادة تشغيل الخادم على تغيير الملف |
npm run start:staging | يبدأ الخادم بتكوين التدريج |
npm run start:prod | يبدأ الخادم بتكوين الإنتاج |
npm run test:watch | التطوير النشط للاختبارات ، ومشاهدة الملفات للتغييرات وإعادة تشغيل الاختبارات |
npm run test | يعرض تغطية الرمز في CLI ويقوم بتحديث تغطية الكود HTML |
يستخدم هذا القالب هريرة واجهة المستخدم للسيطرة على السمة. لقراءة المزيد حول هذا الموضوع ، تأكد من زيارة مستنداتهم.
client/app/config/colors.js.ttf أو .otf مفضل) في مجلد client/app/assets/fonts . (بشكل افتراضي ، يستخدم هذا القالب خط Jost).client/App.js : 
يمكنك تحديد ألوان مختلفة لاستخدامها في وضع الضوء والوضع المظلم عن طريق تحديث القيم في client/app/config/lightTheme.js client/app/config/darkTheme.js على التوالي.
(تستخدم هذه الطريقة خطافات رد الفعل ، لذا تأكد من العمل مع مكونات رد الفعل الوظيفية)

يدعم هذا القالب التكوينات المتغيرة بسلاسة لبناء البيئة المختلفة القائمة على التطبيق (على سبيل المثال ، التطوير والتدريج والإنتاج )
يتم تعيين إعدادات تطبيق الجوال في client/app/config/settings.js .
يجب تعيين تكوين التطوير في كائن dev مباشرة.

يجب تعيين تكوين التدريج في كائن staging . يمكنك إما تعيينها مباشرة ، أو يمكنك إضافتها من خلال ملف client/.env DOT (إذا كان لديك بيانات حساسة).

يجب تعيين تكوين الإنتاج في كائن prod ، ويفضل أن يتم إضافته من خلال ملف client/.env .


يتم تعيين إعدادات الخادم في server/config/settings.js . يعمل خادم ExpressJS في حاوية Docker ، بحيث يمكنك تحديد ملف البيئة الذي يتم توصيله في الحاوية.

على سبيل المثال ، يمكن تعيين تكوين بيئة التطوير على النحو التالي:
server/.env.dev : 
docker-compose.yml : 
يستخدم هذا القالب Firebase لمصادقة المستخدم وإدارته. يقدم Firebase قائمة غنية من مقدمي الخدمات الخارجية التي ترغب في إضافتها في تطبيقك لاحقًا. يتعاملون أيضًا مع إرسال رسائل البريد الإلكتروني للتحقق من البريد الإلكتروني وإعادة تعيين كلمة المرور وتغيير البريد الإلكتروني .
يُقترح أن تقوم بإنشاء 3 مشاريع Firebase منفصلة لتطبيقك: app-dev ، app-staging ، app-prod (لكل بيئة يستخدمها التطبيق الخاص بك). هذا لضمان أنه يمكنك اختبار Environmnts بشكل مستقل عن بعضها البعض ، ومنع البيانات المتداخلة.
قم بإنشاء تكوينات WebApp في مشاريع Firebase الخاصة بك ، وأضفها في كائنات البيئة المناسبة. 
يستخدم الخادم FireBase Admin SDK للقيام بإنشاء برامج مودع للمصادقة. يقوم هذا الوسيطة بفك تشفير رمز JWT المرسلة من التطبيق من خلال طلب API لتحديد المستخدمين وأدوارهم.
server/config/firebase-service-account-<environment>.jsonserver/config/firebase-service-account-dev.json ، server/config/firebase-service-account-staging.json ، server/config/firebase-service-account-prod.json )


















