وكالة كوانتم تك
كل المقالات
الهندسة··5 min read

لماذا اخترنا monorepo (ومتى لن نختاره)

Turborepo بالإضافة إلى pnpm كان مضاعفاً للقوة بالنسبة لنا. كما أنه خاطئ للكثير من الفرق.

بقلم Quantum Admin

إعدادنا

مستودع واحد، ثلاث حزم: apps/web (Next.js)، apps/api (NestJS)، وpackages/types (TS مشترك). يقوم Turborepo بتنسيق خط الأنابيب، ويتعامل pnpm مع رسم تثبيت.

لماذا يعمل لنا

الأنواع المشتركة هي الميزة القاتلة. يظهر تغيير شكل الاستجابة في NestJS كخطأ TypeScript في Next.js في نفس PR. لا انجراف، لا SDK عميل للحفاظ على المزامنة، لا خيط Slack "المخطط قديم".

متى لن نختاره

إذا كان فريقا الواجهة الأمامية والخلفية يعملان بإيقاعات إصدار مختلفة مع تناوبات استدعاء مختلفة، لكان monorepo احتكاكاً وليس رافعة. إذا كان لدينا عشرة تطبيقات بدلاً من اثنين، كنا سنستثمر في Nx بدلاً من Turborepo. إذا كان أحد التطبيقات تطبيق جوال مع سلسلة أدوات أصلية خاصة به، كنا سننقسم.

أعجبك ما قرأت؟

عادة ما نشحن شيئاً مثيراً للاهتمام — أخبرنا بما تعمل عليه.

ابدأ مشروعاً