انتقل إلى المحتوى
التوثيق بالعربية

هذه ترجمة للصفحة الأصلية بالإنجليزية. عند وجود أي اختلاف، تُعتمد النسخة الإنجليزية.

التثبيت

يستهدف DaloyJS إصدار Node.js 24 LTS أو Node.js 26 وما بعده (engines.node: ^24.0.0 || >=26.0.0)، ويُوزَّع في سجل npm العام باسم @daloyjs/core. الحزمة ليس لها اعتماديات peer، لذا يستطيع كل من npm وyarn وpnpm وbun تثبيتها مباشرةً. نوصي باستخدام pnpm مع إعدادات .npmrc المعزَّزة أدناه لأسباب تتعلق بسلسلة التوريد، لكن ذلك ليس إلزاميًا. حقل engines.pnpm في package.json بيانات وصفية إرشادية، أما engines.node فيحدد بيئة التشغيل المدعومة، وقد يُصدر تحذيرًا أو يفشل بحسب مدير الحزم لديك وإعداد engine-strict.

طريقتان للبدء
  1. 01الأسرعإنشاء المشروعpnpm create daloy@latest
  2. 02أوالتثبيت في مشروع قائمpnpm add @daloyjs/core zod
  3. 03تعزيزإضافة إعدادات .npmrcstrict-peer-dependencies، lockfile مجمّد
  4. 04تأكيدالتحقق من الاستيرادnode -e import('@daloyjs/core')
أنشئ مشروعًا معزَّزًا بأمر واحد، أو أضف الحزمة الخالية من الاعتماديات إلى مشروع قائم، ثم ضع ملف .npmrc المعزَّز وتأكد من أن الاستيراد يعمل.

الطريقة الأسرع: أنشئ مشروعًا

استخدم المولّد الرسمي: فهو يجهّز ملف .npmrc معزَّزًا، وTypeScript صارمًا، ومسارًا يعمل، كل ذلك بأمر واحد.

روابط الحزم: create-daloy على npm و@daloyjs/core على npm.

bash
# اختر مدير حزم واحدًا
pnpm create daloy@latest my-api
npm  create daloy@latest my-api
yarn create daloy           my-api
bun  create daloy           my-api

راجع Scaffold a project (بالإنجليزية) لمعرفة القوالب والخيارات.

أو ثبّته في مشروع قائم

المتطلبات

  • Node.js 24 LTS، أو 26.0.0 وما بعده (Node.js 25 غير مدعوم).
  • مدير حزم. أيٌّ من هذه يفي بالغرض؛ يُوصى بـ pnpm 11.x أو أحدث لتعزيز سلسلة التوريد، لكن npm وyarn وbun تثبّت @daloyjs/core دون مشكلات لأن الحزمة ليس لها اعتماديات peer.

لتفعيل pnpm عبر Corepack:

bash
corepack enable
corepack prepare pnpm@11.1.3 --activate
pnpm --version

ثبّت DaloyJS

bash
pnpm add @daloyjs/core zod

اختياري، فقط إن أردت توليد SDK مكتوب الأنواع:

bash
pnpm add -D typescript @hey-api/openapi-ts prettier

حزمة الإطار المنشورة على npm هي @daloyjs/core.

إعدادات التثبيت المعزَّزة

في pnpm 11+، ضع إعدادات سلسلة التوريد في ملف pnpm-workspace.yaml في جذر المشروع (المفاتيح بصيغة camelCase؛ يقرأ pnpm 11 هذا الملف حتى في مشروع من حزمة واحدة). يتجاهل pnpm 11 هذه الإعدادات في .npmrc، لذا فإن الاكتفاء بـ .npmrc يعني غياب فترة الانتظار وسياسة السكربتات.

pnpm-workspace.yamlyaml
minimumReleaseAge: 1440
blockExoticSubdeps: true
ignoreScripts: true
strictPeerDependencies: true
verifyStoreIntegrity: true
preferFrozenLockfile: true
autoInstallPeers: true

بالنسبة إلى npm والإصدارات الأقدم من pnpm، احتفظ بالقيم نفسها في .npmrc أيضًا:

.npmrcini
auto-install-peers=true
strict-peer-dependencies=true
prefer-frozen-lockfile=true
verify-store-integrity=true
minimum-release-age=1440
ignore-scripts=true

تقلّل فترة الانتظار وignoreScripts مخاطر سلسلة التوريد في هذه التثبيتات، لكنها لا توقف كل الهجمات. يحظر ignoreScripts الحمولات الخبيثة في سكربتات التثبيت، لا الشيفرة التي تعمل عند استيراد الحزمة، ولا تحمي فترة الانتظار البالغة 24 ساعة إلا من الاختراقات التي تُكتشف خلال أقل من يوم.

اقرأ الأسباب في الأمان وفي دليل دوافع pnpm.

تحقّق من التثبيت

شغّل هذا الأمر من جذر المشروع بعد التثبيت؛ يعمل بالطريقة نفسها مع pnpm أو npm أو yarn أو bun لأنه يستدعي node مباشرةً:

bash
node -e "import('@daloyjs/core').then(m => console.log('DaloyJS ok ->', Object.keys(m).slice(0, 6)))"

الخطوة التالية

آخر تحديث: