📦 sad-pkg — مدير الحزم
إدارة التبعيات والحزم في مشاريع لغة ص بكل سهولة.
التثبيت
sad-pkg يُثبَّت تلقائياً مع لغة ص:
bash
sad-pkg --versionبدء مشروع جديد
bash
# إنشاء مشروع جديد تفاعلياً
sad-pkg init
# إنشاء مشروع بالاسم مباشرةً
sad-pkg init اسم-مشروعيينشئ sad-pkg init ملف sad.toml:
toml
# sad.toml — إعدادات المشروع
[مشروع]
الاسم = "مشروعي"
الإصدار = "1.0.0"
الوصف = "وصف مشروعي"
المؤلف = "اسمك"
[تبعيات]
# أضف تبعياتك هناإدارة التبعيات
إضافة حزمة
bash
# إضافة حزمة من سيلا هاب
sad-pkg install اسم-الحزمة
# إضافة إصدار محدد
sad-pkg install اسم-الحزمة@1.2.0
# إضافة كتبعية تطوير فقط
sad-pkg install اسم-الحزمة --devحذف حزمة
bash
sad-pkg uninstall اسم-الحزمةتثبيت كل التبعيات
bash
# تثبيت التبعيات المذكورة في sad.toml
sad-pkg installتحديث التبعيات
bash
# تحديث كل التبعيات
sad-pkg update
# تحديث حزمة محددة
sad-pkg update اسم-الحزمةبناء المشروع
bash
# بناء المشروع (debug)
sad-pkg build
# بناء للإنتاج (مع تحسينات)
sad-pkg build --release
# بناء لمنصة محددة
sad-pkg build --target windows-x64
sad-pkg build --target linux-x64
sad-pkg build --target macos-arm64تشغيل المشروع
bash
# تشغيل نقطة الدخول الرئيسية
sad-pkg run
# تشغيل مع معاملات
sad-pkg run -- معامل1 معامل2الاختبار
bash
# تشغيل الاختبارات
sad-pkg test
# تشغيل مع التغطية
sad-pkg test --coverageنشر حزمة
bash
# تسجيل الدخول لسيلا هاب
sad-pkg login
# التحقق من الحزمة قبل النشر
sad-pkg publish --dry-run
# نشر الحزمة
sad-pkg publishهيكل المشروع النموذجي
مشروعي/
├── sad.toml ← إعدادات المشروع والتبعيات
├── sad.lock ← قفل إصدارات التبعيات
├── src/
│ ├── main.ص ← نقطة الدخول
│ └── ...
├── tests/
│ └── اختبار.ص
└── .gitignoreأوامر أخرى
bash
# عرض معلومات حزمة
sad-pkg info اسم-الحزمة
# البحث في سيلا هاب
sad-pkg search كلمة-بحث
# عرض التبعيات المثبتة
sad-pkg list
# تنظيف الملفات المؤقتة
sad-pkg cleansad-pkg إزالة اسم-الحزمة
البحث
sad-pkg بحث "كلمة"
إنشاء مشروع جديد
sad-pkg جديد مشروع-جديد cd مشروع-جديد sad-pkg تثبيت
نشر حزمة
sad-pkg نشر
## ملف project.json
```json
{
"الاسم": "مشروعي",
"الإصدار": "1.0.0",
"الوصف": "وصف مشروعي",
"الاعتماديات": {
"sad-http": "^2.1.0",
"sad-json": "^1.3.0"
}
}