أوامر المشروع
تتعامل أوامر المشروع مع دورة الحياة الكاملة لتطبيق FORGE — من إنشاء مشروع جديد إلى فحص معلومات الإصدار والحفاظ على تحديث أداة CLI.
forge new
أنشئ تطبيقاً متكاملاً جديداً بأمر واحد. يُنشئ FORGE الخلفية (Rust + Axum)، والواجهة الأمامية (Next.js)، وترحيلات قاعدة البيانات، وإعدادات Docker، وشهادات SSL، وإدخالات المضيف المحلي.
الاستخدام
forge new [OPTIONS]الخيارات
| الخيار | النوع | الافتراضي | الوصف |
|---|---|---|---|
--name | string | — | اسم المشروع (kebab-case). يُستخدم للمجلدات وقاعدة البيانات وحاويات Docker. |
--backend | string | rust | إطار الخلفية. يدعم حالياً rust (Axum). |
--frontend | string | nextjs | إطار الواجهة الأمامية. يدعم حالياً nextjs. |
--template | string | base | قالب البداية للتطبيق. راجع أوامر المزودين للقوالب المتاحة. |
--auth | string | email_password | استراتيجية المصادقة: email_password، mobile_otp، أو mobile_password. |
--default-lang | string | en | رمز اللغة الافتراضية (ISO 639-1). |
--languages | string | en | رموز اللغات مفصولة بفواصل، مثل en,ar,fr. |
--no-ssl | flag | false | تخطي توليد شهادات SSL. |
--no-hosts | flag | false | تخطي إضافة إدخالات إلى /etc/hosts. |
--no-docker | flag | false | تخطي توليد ملف Docker Compose. |
--interactive | flag | false | تشغيل معالج الإعداد التفاعلي. |
ماذا يُنشئ forge new
عند تشغيل forge new، تُنفّذ الخطوات التالية بالترتيب:
1. Validate inputs and resolve template
2. Create project directory structure
3. Generate forge.yaml configuration
4. Create Rust/Axum backend (API)
5. Create Next.js frontend (web + admin)
6. Generate database migrations and seeders
7. Create Docker Compose configuration
8. Generate SSL certificates via mkcert
9. Add entries to /etc/hosts
10. Initialize Git repository
11. Install dependenciesأمثلة
بداية سريعة بالافتراضيات:
forge new --name my-appمشروع ثنائي اللغة يبدأ بالعربية مع مصادقة OTP:
forge new --name hajz \
--auth mobile_otp \
--default-lang ar \
--languages ar,enإعداد بسيط (بدون Docker، SSL، أو hosts):
forge new --name prototype \
--no-ssl \
--no-hosts \
--no-dockerالوضع التفاعلي:
forge new --interactiveيمر الوضع التفاعلي على كل خيار خطوة بخطوة:
? اسم المشروع: my-app
? إطار الخلفية: (rust)
? إطار الواجهة الأمامية: (nextjs)
? استراتيجية المصادقة:
> email_password
mobile_otp
mobile_password
? اللغة الافتراضية: en
? لغات إضافية (مفصولة بفواصل): ar
? توليد شهادات SSL؟ (Y/n)
? إضافة إدخالات /etc/hosts؟ (Y/n)
? توليد إعدادات Docker؟ (Y/n)
جاري إنشاء المشروع "my-app"...
[1/11] التحقق من المدخلات... تم
[2/11] إنشاء بنية المجلدات... تم
...
[11/11] تثبيت التبعيات... تم
تم إنشاء المشروع بنجاح!
cd my-app && forge serveنصيحة
استخدم --interactive في المرة الأولى التي تُنشئ فيها مشروعاً. بمجرد أن تألف الخيارات، الطريقة القائمة على الخيارات أسرع للاستخدام المتكرر.
forge info
عرض البيانات الوصفية وتفاصيل الإعدادات حول مشروع FORGE الحالي.
الاستخدام
forge infoمثال على المخرجات
المشروع: my-app
الخلفية: rust (axum)
الواجهة: nextjs
المصادقة: email_password
اللغات: en (افتراضي), ar
القالب: base
قاعدة البيانات: PostgreSQL
Docker: مُفعّل
SSL: مُفعّل
تاريخ الإنشاء: 2025-04-12forge doctor
فحص الصحة العامة لمشروع FORGE. يتحقق من أن الإعدادات والتبعيات واتصالات قاعدة البيانات وسلامة الملفات المُولّدة كلها بحالة جيدة.
الاستخدام
forge doctorمثال على المخرجات
FORGE Doctor — فحص صحة المشروع
✓ forge.yaml صالح
✓ سلامة forge.lock مُتحققة
✓ جميع الترحيلات مُطبّقة
✓ الخلفية تُترجم (cargo check)
✓ الواجهة الأمامية تُبنى (npm run build)
✓ عقد API مُلبّى
✓ الصفحات المطلوبة موجودة
✓ الصلاحيات مزروعة بشكل صحيح
جميع الفحوصات نجحت. المشروع سليم.نصيحة
شغّل forge doctor بعد ترقية FORGE، أو إضافة قوالب جديدة، أو تعديل إعدادات البنية التحتية. يلتقط المشاكل مبكراً ويقترح حلولاً لكل فحص فاشل.
forge update
تحديث أداة FORGE CLI إلى أحدث إصدار.
الاستخدام
forge updateتحذير
بعد التحديث، شغّل forge upgrade:check داخل المشاريع الموجودة لمعرفة ما إذا كانت أي ملفات مُولّدة تحتاج تحديث. راجع أوامر التحقق للتفاصيل. يمكنك أيضاً استخدام forge --version للتأكد من الإصدار المُثبّت.
مثال على المخرجات
جاري التحقق من التحديثات...
الإصدار الحالي: 0.5.1
أحدث إصدار: 0.5.2
جاري التحميل... تم
جاري التثبيت... تم
تم التحديث إلى forge 0.5.2forge help
عرض معلومات الاستخدام لأي أمر FORGE.
الاستخدام
forge help [COMMAND]أمثلة
# General help
forge help
# Help for a specific command
forge help new
forge help make:modelانظر أيضاً
- أوامر التطوير — بدء الخوادم، البناء، الاختبار، التنسيق
- أوامر التوليد — إنشاء النماذج والمعالجات والصفحات
- أوامر البنية التحتية — إدارة SSL، hosts، Docker