NestJS — Node.js للمؤسسات

إعداد البيئة وأداة Nest CLI

13 دقيقة الدرس 2 من 30

إعداد البيئة وأداة Nest CLI

قبل كتابة كود NestJS تحتاج إلى Node.js وأداة Nest CLI — أداة سطر الأوامر الرسمية التي تُنشئ المشاريع وتولّد اللبنات الأساسية وتشغّل تطبيقك أثناء التطوير. إنّ CLI هي أسرع طريقة للالتزام بأعراف NestJS.

المتطلّبات المسبقة

  • Node.js (إصدار LTS، يُنصح بـ 18 أو أحدث). تحقّق عبر node -v.
  • مدير حزم — npm (يأتي مع Node) أو pnpm / yarn.
  • معرفة TypeScript — تُستخدم المُزخرِفات والأنواع في كل مكان.
لماذا إصدار LTS؟ يستهدف NestJS إصدارات Node المدعومة فعليًا. قد تفتقر الإصدارات القديمة لميزات يعتمد عليها الإطار، وقد تكون إصدارات "Current" الحديثة جدًا غير مستقرّة للإنتاج.

تثبيت Nest CLI

ثبّتها عالميًا ليتوفّر الأمر nest في أي مكان:

npm install -g @nestjs/cli # تحقّق من التثبيت nest --version

إنشاء مشروع جديد

أنشئ تطبيقًا كامل العمل بأمر واحد:

nest new my-app # تسألك الأداة عن مدير الحزم، ثم تثبّت كل شيء cd my-app npm run start:dev

واجهتك البرمجية تعمل الآن على http://localhost:3000 مع إعادة تحميل فوري — كل حفظ يُعيد تشغيل الخادم تلقائيًا.

start:dev يستخدم وضع المراقبة للتطوير. للإنتاج تُجمّع مرّة واحدة بـ npm run build وتشغّل npm run start:prod التي تنفّذ JavaScript المُجمّعة من مجلّد dist/.

أكثر أوامر CLI فائدة

أمر generate (اختصارًا g) يولّد اللبنات بالملفات والتسمية وربط الوحدة الصحيح:

# توليد مورد CRUD كامل (وحدة + متحكّم + خدمة + DTOs) nest g resource users # أو توليد الأجزاء منفردة nest g module users nest g controller users nest g service users

توليد متحكّم مثلًا يُنشئ الملف وملف اختباره ويسجّله في أقرب وحدة — دون ربط يدوي.

فهم سكربتات npm

  • start:dev — التشغيل في وضع المراقبة (التطوير).
  • build — تجميع TypeScript إلى JavaScript في dist/.
  • start:prod — تشغيل التطبيق المُجمّع.
  • test / test:e2e — تشغيل اختبارات الوحدة والاختبارات الشاملة بـ Jest.
  • lint — تشغيل ESLint على المشروع.
لا تُضِف مجلّدي dist/ أو node_modules/ إلى Git. ملف .gitignore المُولَّد يستبعدهما أصلًا — فـ dist/ ناتج بناء وnode_modules/ يُستعاد بـ npm install.

الخلاصة

ثبّت Node.js LTS وأداة Nest CLI، وأنشئ مشروعًا بـ nest new، واستخدم nest g لتوليد لبنات متناسقة. يمنحك سكربت start:dev تطويرًا بإعادة تحميل فوري. تاليًا سنفتح المشروع المُولَّد ونفهم كيف يُقلِع.