عن المشروع

Wasp (اختصارًا لـ Web Application Specification) هو إطار عمل كامل المكدس بأسلوب Rails لبناء تطبيقات الويب باستخدام React وNode.js وPrisma. بدلاً من الربط اليدوي بين الواجهة الأمامية والخلفية وطبقة قاعدة البيانات والإعداد للنشر، تصف الشكل عالي المستوى لتطبيقك في ملف تعريف تعريفي (main.wasp.ts) ويقوم مُصرّف Wasp بتوليد الكود المصدري الكامل للتطبيق وفقًا للمكدس المستهدف. الأفكار الرئيسية من ملف README: - ملف تعريف تعريفي: ملف تعريف واحد يعلن اسم التطبيق وعنوانه وإعدادات المصادقة والمسارات والصفحات والاستعلامات. كود React وNode.js الخاص بك يُكتب في ملفات .ts/.tsx عادية ويُشار إليه من ملف التعريف. - شامل ومتكامل: ميزات كاملة المكدس مدمجة تشمل المصادقة (البريد الإلكتروني وGoogle وطرق أخرى)، وRPC بين العميل والخادم، والوظائف الخلفية، وإرسال البريد الإلكتروني، وأمان الأنواع من البداية إلى النهاية. نمذجة قاعدة البيانات تتم عبر مخطط Prisma. - لا قيود: الكود المُولَّد يوضع في مجلد .wasp/ ويمكن فحصه؛ ويمكن نشر التطبيق على أي مزود تختاره. - نشر بأمر واحد: يروّج ملف README لنشر تطبيق جاهز للإنتاج بأمر واحد من سطر الأوامر. - تصميم موجّه للذكاء الاصطناعي: يضع المشروع ملف التعريف عالي المستوى والبنية المنظّمة والمكدس المتكامل كوسيلة لإعطاء وكلاء البرمجة بالذكاء الاصطناعي حدودًا أوضح وكمية أقل من الكود التكراري. تُقدَّم إضافات رسمية لوكلاء الذكاء الاصطناعي مثل Cursor وClaude Code. البدء: ثبّت واجهة الأوامر عالميًا باستخدام npm (npm i -g @wasp.sh/wasp-cli@latest) على macOS أو Linux أو WSL، ثم اتبع وثائق البدء السريع. يوجد مثال تعليمي لتطبيق TodoApp في المستودع. حالة المشروع: يُوصف Wasp بأنه في مرحلة بيتا، حيث أن معظم الميزات مطوّرة وتعمل، ولكن هناك تغييرات وتحسينات مستمرة مخطط لها. التركيز الحالي هو على مكدس واحد: React مع TanStack Query، وNode.js مع Express.js، وPrisma، مع أن دعم مكدسات أوسع هو هدف طويل الأمد. المساهمات مرحّب بها، حيث تُقبل الإصلاحات الصغيرة مباشرة كطلبات سحب، بينما تُناقش التغييرات الأكبر أولاً عبر مشكلات GitHub أو Discord.