Skip to content

📑 جدول المحتويات

المساهمة في Carch

نحن متحمسون لاهتمامك بالمساهمة في Carch! جميع أنواع المساهمات مرحب بها، سواء كنت تصلح الأخطاء أو تضيف ميزات جديدة أو تحسن التوثيق. اتبع هذا الدليل للبدء.

WARNING

قبل تقديم أي مساهمات، افتح أولاً مشكلة في قسم طلب الميزة. سنناقش التغييرات هناك قبل المتابعة مع التنفيذ.

📌 فهم قاعدة الكود

NOTE

قبل المساهمة، افهم هيكل Carch:

  • ملفات Rust الرئيسية لـ Carch موجودة في: src
sh
src/
├── ui/
   ├── app.rs
   ├── mod.rs
   ├── popups.rs
   └── render.rs 
├── main.rs 
├── commands.rs
├── display.rs
├── script_list.rs 
└── version.rs
  • جميع نصوص modules منظمة حسب الفئة في:
sh
modules/
├── Browser/     # نصوص متعلقة بالمتصفح
├── Desktop/     # نصوص متعلقة ببيئة سطح المكتب
├── Development/ # نصوص أدوات التطوير
├── System/      # نصوص تكوين النظام
└── Terminal/    # نصوص إعداد المحطة الطرفية

IMPORTANT

أولاً، قم بتحليل كيف يعمل النص قبل إجراء أي تغييرات. إذا كنت تريد تحسين أو إضافة إلى المشروع، تأكد من أنك تفهم الهيكل وكيف تتفاعل كل قطعة. سيساعدك هذا على المساهمة بطريقة متسقة مع تصميم المشروع.

sh
للالتزام، استخدم تسميات مثل
feat: your-commit-message أو fix: your-commit-message.

بالمناسبة، قبل الالتزام، إذا كنت تقوم بتعديل أي ملف .sh أو ملف سكربت Bash، تأكد من التحقق من مجلد scripts/ وتشغيل ./check.sh لاكتشاف أي مسافات بيضاء أو فراغات إضافية. إذا فشل، قم بتشغيل ./cleanup.sh. هذا خاص فقط بسكربتات Bash.
بالنسبة لتغييرات ملفات Rust، تأكد من تشغيل cargo fmt --all --check. إذا ظهرت اقتراحات، قم بتشغيل cargo fmt --all.
تأكد أيضًا من تشغيل cargo clippy و cargo clippy -- -Dwarnings لضمان عدم وجود أي أخطاء. شكرًا.

لمزيد من المعلومات حول Conventional Commits، راجع هذا الدليل.

إذا كان لديك أسئلة أو تحتاج مساعدة، لا تتردد في التواصل معنا:
📧 البريد الإلكتروني: [email protected]
💬 Discord: انضم هنا

خطوات المساهمة

1. 🍽️ قم بعمل Fork للمستودع

  • اذهب إلى صفحة Carch على GitHub.
  • انقر على زر Fork في الزاوية العلوية اليمنى لإنشاء نسختك الخاصة من المستودع.

2. 🌿 استنساخ المستودع المتفرع

  • استخدم الأمر التالي لاستنساخ المستودع إلى نظامك المحلي:

    bash
    git clone https://github.com/your-username/carch.git
  • استبدل your-username باسم المستخدم الخاص بك على GitHub.

💡 نصيحة

يمكنك أيضاً استخدام أدوات واجهة المستخدم الرسومية مثل GitHub Desktop أو حتى واجهة GitHub الويب لعمل fork واستنساخ المستودعات. توفر هذه الأدوات واجهة بصرية سهلة الاستخدام لإدارة مساهماتك.

3. 🌱 تعيين المستودع الأصلي كـ Upstream

  • أضف مستودع Carch الأصلي كـ upstream remote للحفاظ على تحديث fork الخاص بك:

    bash
    cd carch
    bash
    git remote add upstream https://github.com/original-author/carch.git

4. 🍇 إنشاء فرع ميزة جديد

  • قبل إجراء التغييرات، أنشئ فرعاً جديداً باسم وصفي:

    bash
    git checkout -b feature/your-branch-name
  • أمثلة على أسماء الفروع:

    • feature/add-new-script
    • bugfix/fix-installation-issue

5. 🔧 اجعل تغييراتك

  • قم بتنفيذ التغييرات اللازمة على الكود أو التوثيق.
  • تأكد من أن تغييراتك واضحة ومختبرة وتتبع معايير الترميز الخاصة بالمشروع.

6. 📝 ضع تغييراتك في المرحلة والتزم بها

  • أضف الملفات المعدلة إلى منطقة التدريج:

    bash
    git add .
  • قم بالالتزام بتغييراتك برسالة واضحة:

    bash
    git commit -m "Add: [وصف موجز لتغييراتك]"

7. 🚀 ادفع التغييرات إلى Fork الخاص بك

  • ادفع فرعك إلى المستودع المتفرع:

    bash
    git push origin feature/your-branch-name

8. 📥 أرسل طلب السحب (PR)

  • اذهب إلى مستودع Carch الأصلي على GitHub.
  • انقر على New Pull Request.
  • اختر فرعك من القائمة المنسدلة وصف تغييراتك بالتفصيل.
  • أرسل PR للمراجعة!

📚 المساهمة في وثائق Carch

وثائق Carchمباشر هنا

🚀 طرق المساهمة

يمكنك المساهمة من خلال:

  • 🪛 إصلاح الأخطاء المطبعية أو الأخطاء في الدلائل الموجودة
  • 🌐 ترجمة التوثيق إلى لغات أخرى (مشجع بشدة!)

🌍 ترجمة التوثيق

تريد المساعدة في جعل Carch في متناول المستخدمين في جميع أنحاء العالم؟ ساعدنا في ترجمة الوثائق!

إذا كنت تساهم بـ لغة جديدة، اتبع هذه الخطوات:

  1. 📁 أنشئ مجلداً جديداً للغتك داخل دليل docs/. استخدم رموز ISO 639-1 (مثل fr, es, hi, إلخ).
  2. 🛠️ ترجم محتوى Markdown داخل المجلد الجديد.
  3. 🧩 عدّل docs/.vitepress/config.ts:
    • أضف لغتك في قسم locales.
    • قدم label, lang, و link للتنقل.

🧪 اختبار تغييراتك محلياً

لمعاينة تغييراتك:

sh
bun install
bun run docs:dev

IMPORTANT

يرجى فتح مشكلة أولاً إذا كنت تخطط لإدخال تغييرات هيكلية أو تنظيمية رئيسية. نود مناقشة والتعاون عليها مسبقاً!

🧾 نمط الالتزام

استخدم رسائل التزام واضحة مثل:

sh
git commit -m "fix(docs): تصحيح خطأ مطبعي في دليل التثبيت"
git commit -m "feat(docs): إضافة الترجمة العربية"

المزيد عن Conventional Commits.

🙌 شكراً لمساعدتك في تحسين التوثيق!

الإرشادات

جودة الكود

  • اتبع نمط الترميز الموجود للمشروع.
  • اكتب كوداً واضحاً ومقتضباً وموثقاً جيداً.

الاختبار

  • اختبر تغييراتك محلياً للتأكد من أنها تعمل كما هو متوقع.
  • إذا كانت تغييراتك تقدم ميزات جديدة، أضف الاختبارات اللازمة حيثما أمكن.

التوثيق

  • إذا كانت تغييراتك تتضمن وظائف جديدة، حدّث التوثيق ذي الصلة.
  • تأكد من أن README أو Wiki يعكس تحديثاتك.

مزامنة Fork الخاص بك

  • حافظ على تحديث fork الخاص بك لتجنب التعارضات:

    bash
    git fetch upstream
    bash
    git merge upstream/main
    • استبدل main بالفرع الافتراضي للمستودع إذا كان مختلفاً.

شكراً لك على المساهمة في Carch! جهدك يساعد في جعل هذا المشروع أفضل للجميع.

تم الإصدار بموجب ترخيص MIT.