نحن نسخر قوة مساحات عمل pnpm للحفاظ على عمل المونوريبو الخاص بنا بشكل أكثر سلاسة من فطيرة الزبدة الطازجة.
انسخ Hey monorepo إلى جهازك المحلي:
git clone [email protected]:/repos/hey/hey.git
هز نظام التشغيل MacOS؟ يمكنك الحصول على كليهما باستخدام Homebrew، مثل محترف المشروب الحقيقي:
brew install nvm pnpm
استخدم nvm
لاستدعاء الإصدار السحري من Node.js الذي تحتاجه:
nvm install
انقل نفسك إلى جذر المستودع ودع pnpm ينشر سحر التبعية الخاص به:
pnpm install
.env
قم بتوجيه معالجك الداخلي واستحضر ملف .env
من قالب .env.example
لكل حزمة وتطبيق يحتاج إليه. لا تنس رش متغيرات البيئة الضرورية!
cp .env.example .env
لا تنس تشغيل نسخة مقلدة وتكرار إنشاء ملف .env
لكل حزمة وتطبيق يحتاج إليه. الاتساق هو المفتاح!
عندما تتم محاذاة جميع النجوم ويكون كل شيء في مكانه، ابدأ تشغيل التطبيق في وضع التطوير:
pnpm dev
على استعداد لبناء التطبيق؟ فقط قم بتشغيل هذا الأمر:
pnpm build
هل تريد إجراء الاختبارات أثناء التطوير؟ إليك كيفية القيام بذلك:
pnpm test
نحن نستخدم ts-prune
لتعقب الصادرات غير المستخدمة والمساعدين الموجودين في قاعدة التعليمات البرمجية الخاصة بنا والقضاء عليها. مجرد تنبيه: ستحتاج إلى تشغيل هذه المهمة يدويًا لكل حزمة وتطبيق. تشذيب سعيد!
cd apps/web ; npx ts-prune -i generated.ts
الوقت لإعطاء تبعياتنا تحول! نحن نعتمد على القوى السحرية لـ pnpm
للحفاظ على كل شيء محدثًا ومظهرًا حادًا.
script/clean-branches
script/update-dependencies
نحن نثق في pnpm
للحفاظ على ملف القفل الخاص بنا جديدًا ورائعًا!
script/clean-branches
script/update-lock-file
نستخدم Ripgrep للبحث عن نص في قاعدة التعليمات البرمجية. يبدو الأمر كما لو كان لدى grep
و ag
طفل، ونشأ هذا الطفل ليصبح شيطان السرعة!
تثبيته عبر Homebrew:
brew install ripgrep
البحث عن نص في قاعدة التعليمات البرمجية:
rg " const Verified "
في apps/web
، لدينا محلل حزم يوضح حجم ومحتويات حزم الإنتاج لدينا. إنه مثل الحصول على رؤية بالأشعة السينية للتعليمات البرمجية الخاصة بك!
لتوليد هذا الإخراج، قم بتشغيل:
cd apps/web
ANALYZE=true pnpm build
أطلق هذا الأمر لإنشاء مشروع apps/web
وشاهد ثلاث نوافذ للمتصفح تفتح بطريقة سحرية، وتعرض كل منها تفاصيل الحزمة الخاصة بحزم العقدة والحافة والعميل. تعد حزمة العميل بمثابة البطل الخارق لأداء الصفحة، بينما تلعب جميع الحزم دورًا حيويًا في التطوير وبناء الأداء.
نرجو من جميع المساهمين وأعضاء الفريق اتباع قواعد السلوك الخاصة بنا. فكر في الأمر باعتباره كتاب القواعد الذهبي لمجتمعنا - العب بلطف وحافظ على تدفق المشاعر الجيدة!
هذا المشروع مفتوح المصدر بموجب ترخيص AGPL-3.0 . للحصول على كافة التفاصيل الجوهرية، راجع ملف الترخيص. إنها صفحة حقيقية!
نحن ؟ أنت إلى القمر والعودة! إن دعمك يشبه إمدادًا لا ينتهي من القهوة لرمزنا. شكرًا لك على جعل Hey المكان الأكثر روعة في الكون!
؟