مشاريع GitHub
أدوات مفتوحة المصدر وُلدت من احتياجات حقيقية في بيئة الإنتاج: دمج واجهة Uber Eats، وتوليد واجهات CRUD، وأدوات لـ Symfony.
- 3.1
Pepprio
منصة SaaS لإدارة طلبات المطاعم: Uber Eats وDeliveroo وJust Eat وGlovo على جهاز لوحي واحد، مع نقطة بيع وشاشة مطبخ وكشك ومعالجة تلقائية للنزاعات.
- PHP 8.4
- Symfony 7
- GraphQL
- Vue 3
- TypeScript
- MySQL
- Redis
- Stripe
- Docker
- Traefik
- 3.2
OrpiHub
منصة بيانات شبكة ORPI (مشروع داخلي): القيادة التجارية والخرائط والتصدير وتدقيق الوكالات ومساعد ذكاء اصطناعي مع خادم MCP وRAG.
- Symfony
- PHP 8
- React
- TypeScript
- GraphQL
- SQL Server
- MySQL
- PostgreSQL
- BigQuery
- Docker
- 3.3
UberEat PHP SDK
مكتبة PHP لدمج واجهة برمجة UberEat
- دمج كامل لواجهة برمجة UberEat
- إدارة الطلبات والقوائم
- توثيق مفصل وأمثلة
- PHP
- REST APIs
- PHPUnit
- GitHub Actions
- 3.4
Symfony CRUD Template Bundle
حزمة لإنشاء واجهات CRUD بسرعة
- PHP
- Symfony
- Twig
- JavaScript
- 3.5
Symfony Mouse Tracker
حزمة لتتبع تفاعلات المستخدم
- PHP
- Symfony
- React
- VueJS
- TypeScript
- 3.6
Symfony Diagram Bundle
مولد المخططات لمشاريع Symfony
- PHP
- Symfony
- Doctrine
- React
- VueJS
- TypeScript
- 3.7
Symfony Audit Bundle
تدقيق تعديلات كيانات Doctrine مع إمكانية التراجع وواجهة ويب وواجهة REST.
- PHP
- Symfony
- Doctrine
- Twig
- REST APIs
- 3.8
AuthX Bundle
المصادقة والتفويض في Symfony: JWT وOpenID Connect وإدارة المستخدمين وسجل التدقيق والاشتراكات.
- PHP
- Symfony
- JWT
- OpenID Connect
- Twig
- 3.9
Omnimail MCP
خادم MCP مفتوح المصدر لعدة حسابات بريد (iCloud وGmail وOutlook وYahoo وProton وInfomaniak وIMAP)، مع Docker ومتوافق مع RGPD.
- MCP
- IMAP
- Docker
- 3.10
Portfolio benmacha.tn
هذا الموقع: كتاب تقني بثلاث لغات (FR / EN / AR) مبني بـ Nuxt 3 ومولَّد مسبقًا، مع رسوم متساوية القياس.
- Nuxt
- VueJS
- TypeScript
- GitHub Actions
لماذا هذه المشاريع مفتوحة المصدر
وُلد كل مشروع من هذه المشاريع من حاجة واجهتها في بيئة الإنتاج: تكامل يجب كتابته، أو مهمة متكررة يجب أتمتتها، أو معلومة يصعب الحصول عليها. وبدلًا من إبقاء الشيفرة داخل مشروع واحد، استخرجتها ووثّقتها ونشرتها على GitHub وPackagist ليستفيد منها مطورو PHP وSymfony الآخرون.
تغطي هذه المستودعات عدة أجيال من Symfony، من أولى الحزم المكتوبة عام 2017 إلى الإصدارات الحديثة المصانة لـ Symfony 7. وهي تُظهر أيضًا طريقتي في العمل: شيفرة محددة الأنواع، وأدوات تحليل ساكن، وتكامل مستمر، وتوثيق واضح من الصفحة الرئيسية للمستودع.
UberEats PHP SDK: تكامل نظيف مع واجهة Uber Eats
حزمة UberEats SDK عميل PHP حديث لواجهة Uber Eats البرمجية، متوافق مع PHP 7.4 وما بعده. يتولى المصادقة والطلبات والمتاجر وعمليات التوصيل، إضافة إلى webhooks. وتُمثَّل الطلبات والاستجابات بكائنات محددة الأنواع، مما يجنّب التعامل مع مصفوفات ترابطية هشّة.
يعتمد المشروع على Guzzle لطلبات HTTP ويقبل مسجّلًا اختياريًا متوافقًا مع PSR-3. وتُفحص الجودة تلقائيًا: أسلوب كتابة PSR-12 عبر PHP CS Fixer، وPHPStan في أعلى مستوى، واختبارات تعمل في التكامل المستمر على GitHub Actions. ويُثبَّت عبر Composer من خلال الحزمة ubereats/php-sdk.
حزم Symfony
توفّر حزمة Template Bundle (benmacha/templatebundle) واجهة إدارة جاهزة للاستخدام وأمرًا هو benmacha:generate:crud يولّد واجهة CRUD كاملة مع مدخلها في القائمة. وهذا يوفّر وقتًا حقيقيًا في لوحات الإدارة الداخلية التي تحتاج إلى شاشات إدارة كثيرة ومتشابهة.
أما MouseTrackerBundle (benmacha/mousetracker) فهي أداة ذاتية الاستضافة لتتبع الفأرة في Symfony 5.4 و6.4 و7.x، على PHP 8.1 وما بعده. تسجّل الحركات والنقرات والتمرير ولقطات من DOM في قاعدة بياناتك الخاصة، لإنتاج خرائط حرارية وإعادة تشغيل الجلسات دون إرسال بيانات مستخدميك إلى خدمة خارجية. ولم يعد الإصدار 2 يعتمد على jQuery.
وتقوم DiagramBundle (benmacha/diagram-bundle)، المنشورة بترخيص MIT، برسم كيانات قاعدة البيانات والعلاقات التي تربط بينها. وهي تساعد على فهم نموذج بيانات مشروع Symfony قائم بسرعة، مثلًا عند استلام شيفرة موجودة أو انضمام مطوّر جديد إلى الفريق.
الاستخدام أو المساهمة
تُثبَّت كل هذه الحزم عبر Composer، ويوجد توثيقها مباشرة في مستودع GitHub. والبلاغات وطلبات الدمج مرحّب بها: فتقرير دقيق عن خطأ أو تحسين في التوثيق يُعدّ مساهمة مفيدة. ولأي حاجة أكثر تحديدًا تتعلق بـ Symfony أو بتكامل واجهة برمجية، يمكنك التواصل معي مباشرة.