يرجى تخصيص لحظة لمراجعة هذا المستند قبل إرسال أول طلب سحب. نوصي أيضاً بشدة بالتحقق من المشكلات وطلبات السحب المفتوحة لمعرفة ما إذا كان شخص آخر يعمل على شيء مشابه.
إذا كنت بحاجة إلى أي مساعدة، لا تتردد في التواصل عبر Discord.
هذا المستودع هو nextjs أصلي قائم على الميزات.
هذا المستودع منظم كالتالي:
src/— Source code directoryapp/— Next.js App Router[lang]/— Internationalized routes(marketing)/— Entry point 01: SaaS marketing(operator)/— Entry point 02: SaaS dashboard(auth)/— Authentication pagesonboarding/— User onboarding flows/— Multi-tenant routing[subdomain]/— Tenant-specific routes(platform)/— Entry point 04: School dashboard(site)/— Entry point 03: School marketinglayout.tsx— Root layout componentcomponents/— React componentsui/— shadcn/ui componentsatom/— Complex components (2+ shadcn combined)template/— Full sections (header, hero, footer)auth/— Authentication componentsonboarding/— Onboarding flow componentsmarketing/— Entry point 01: SaaS marketingoperator/— Entry point 02: SaaS dashboardsite/— Entry point 03: School marketingplatform/— Entry point 04: School dashboardلتعليمات الإعداد التفصيلية، يرجى الرجوع إلى:
قبل إنشاء طلب سحب، يرجى التحقق من أن التزاماتك تتوافق مع اصطلاحات الالتزام المستخدمة في هذا المستودع.
عند إنشاء التزام، نطلب منك بلطف اتباع الاصطلاح
category(scope or module): message في رسالة الالتزام باستخدام إحدى
الفئات التالية:
feat / feature: جميع التغييرات التي تقدم كوداً جديداً تماماً أو
ميزات جديدة
fix: التغييرات التي تصلح خطأ (مثالياً ستشير أيضاً إلى
مشكلة إذا وجدت)
refactor: أي تغيير متعلق بالكود ليس إصلاحاً ولا ميزة
docs: تغيير التوثيق الموجود أو إنشاء توثيق جديد
build: جميع التغييرات المتعلقة ببناء البرنامج، التغييرات على
التبعيات أو إضافة تبعيات جديدة
test: جميع التغييرات المتعلقة بالاختبارات (إضافة اختبارات جديدة أو تغيير
الموجودة)
ci: جميع التغييرات المتعلقة بتكوين التكامل المستمر
chore: جميع التغييرات على المستودع التي لا تندرج تحت أي من الفئات
أعلاه
مثال: feat(components): add new prop to the avatar component
استخدم اسم المجلد كنطاق:
feat(marketing): تغييرات تسويق SaaSfeat(operator): تغييرات لوحة تحكم SaaSfeat(site): تغييرات تسويق المدرسةfeat(platform): تغييرات لوحة تحكم المدرسةfeat(auth): تغييرات المصادقةfeat(onboarding): تغييرات تدفق الإعدادfeat(ui): تغييرات مكونات shadcn/uifeat(atom): تغييرات المكونات الذريةfeat(template): تغييرات القوالب/الأقسامfix(docs): إصلاحات التوثيقلمزيد من التفاصيل، زر conventionalcommits.org.
إذا كان لديك طلب لمكون جديد، يرجى فتح نقاش على GitHub. سنكون سعداء بمساعدتك.
حزمة codebase هي CLI لإضافة المكونات إلى مشروعك. يمكنك إيجاد التوثيق لـ CLI هنا.
أي تغييرات على CLI يجب أن تُجرى في دليل packages/codebase. إذا استطعت، سيكون رائعاً إذا أضفت اختبارات لتغييراتك.
الاختبارات مكتوبة باستخدام Vitest. يمكنك تشغيل جميع الاختبارات من جذر المستودع.
pnpm testيرجى التأكد من أن الاختبارات ناجحة عند إرسال طلب سحب. إذا كنت تضيف ميزات جديدة، يرجى تضمين اختبارات.