التثبيت والاختبارات
المتطلبات
Section titled “المتطلبات”PHP 8.3 مع pdo_pgsql، وComposer، وNode 22 أو أحدث، وPostgreSQL 16 مع دور pls بلا كلمة مرور على 127.0.0.1:5432 وقاعدتين: pls وpls_test.
التثبيت الأول
Section titled “التثبيت الأول”composer install && npm installcp .env.example .env && php artisan key:generatephp artisan migrate:fresh --seednpm run buildphp artisan serveينشئ الـ seeder كتالوج العرض التوضيحي، ومديرًا (ADMIN_EMAIL / ADMIN_PASSWORD من ملف .env)، وثلاثة مختبِرين مدعوّين.
| العنوان | المحتوى |
|---|---|
/ |
الموقع العام — يوجّه إلى /ar أو /fr |
/admin |
لوحة الإدارة |
/docs/api |
المرجع التفاعلي لواجهة البرمجة (API) |
/api/v1/catalogue |
واجهة البرمجة (API) نفسها |
/documentation |
هذا التوثيق |
لاختبار الدخول بالرمز محليًا، القناة هي log: اطلب رمزًا ثم اقرأ storage/logs/laravel.log (السطر «OTP pour …»). مقاطع العرض التجريبي بلا ملفات صوتية: php artisan demo:audios ينزّل الكتب الصوتية الثلاثة التجريبية ويربطها بكل مقطع للاستماع من البداية إلى النهاية.
الاختبارات
Section titled “الاختبارات”php artisan test # la suite complète, sur la base pls_test./vendor/bin/pint # le styleلكل قاعدة في ملف الهندسة المعمارية اختبارها الخاص، مسمّى باسم القاعدة. اختباران منهما ضمانتان عرضيتان: أحدهما يقارن عقد OpenAPI بالمسارات الفعلية، والآخر يعيد قراءة الكود كله ويفشل إن وُجدت سلسلة واجهة بلا ترجمة عربية.
التكامل المستمر
Section titled “التكامل المستمر”يشغّل تدفق GitHub Actions أداة Pint، وبناء الواجهة، ومجموعة الاختبارات على PostgreSQL 16 عند كل push.
هذا التوثيق
Section titled “هذا التوثيق”يُبنى باستخدام Starlight (Astro) في docs/site ويُنشر في public/documentation، ومن هناك يقدّمه التطبيق.
npm run docs:dev # aperçu avec rechargementnpm run docs:build # construction, recherche compriseالصفحات الفرنسية في docs/site/src/content/docs/fr، والعربية في …/ar، بالبنية الشجرية نفسها. مرجع الجداول مولّد من المخطط الفعلي: يجب إعادة توليده بعد كل ترحيل.