الغرض من مجموعة المبتدئين هذه هو عدم أن تكون حلًا كاملاً ، ولكن مقدمة لإنشاء مواقع ويب عالية الأداء باستخدام Next.js و React و GraphQL. نستخدم هذا المستودع للمشاريع الجديدة في Atheros Intelligence وكمستأنف لمقالاتنا في GraphQL Mastery
git clone [email protected]:atherosai/next-react-graphql-apollo-hooks.gitpackage-lock.json استخدم npm ci لتثبيت الحزم على الرغم من أن مجموعة Starter يجب أن تعمل مع إصدارات Node الأقدم ، إلا أنني أقترح استخدام أحدث LTS version . في package.json . لقد حددنا المتطلبات على النحو التالي:
"engines" : {
"node" : " >=10.0.0 " ,
"npm" : " >6 "
},من أجل تحقيق أفضل أداء يجب أن تكون قد قمت بتمكين HTTP/2 وكذلك تمكين الضغط في الوكيل العكسي (NGINX). خادم محدث Node.js هو أيضًا مفيدة للغاية.
تم تصميم حل متغيرات البيئة باستخدام مكتبة Dotenv ومتغيران للبيئة. يمكن تعيين متغير NODE_ENV المعروف على أنه development أو production و CUSTOM_ENV لدينا ، والذي يحدد البيئة. يمكن أن يكون هذا staging أو production أو البيئة local أو حتى خادم الإنشاء الخاص بك. يحدد هذان المتغيران اسم ملف .env في /secrets المجلد الذي سيتم استخدامه. إذا نود على سبيل المثال تحديد التكوين لبيئة التدريج الخاصة بنا ، فسنقوم بإنشاء الملف المسمى /secrets/production-staging.env production targing.env ووضع جميع متغيرات البيئة هناك. يمكن أن يكون مثال مثل هذا الملف على سبيل المثال ما يلي يمكننا استخدامه للتطوير
NODE_ENV=development
CUSTOM_ENV=local
PORT=3000
API_URL=http://localhost:3000/graphql
HOST=http://localhost:3000 يمكنك تشغيل تدقيق الأمن على التبعيات مع. تأكد من استخدام package-lock.json في مستودعنا.
npm audit