README.ar.md
English · 中文 · Français · Portuguese (Brazil) ・ 日本語 · 한국어 · Русский · Español · Vietnamese · العربية
Loco مستوحى بشكل كبير من Rails. إذا كنت تعرف Rails و Rust، فستشعر وكأنك في بيتك. أما إذا كنت تعرف Rails فقط وحديث العهد بـ Rust، فستجد Loco منعشًا. نحن لا نفترض معرفتك المسبقة بـ Rails.
للتعمق أكثر في طريقة عمل Loco، بما في ذلك الأدلة المفصلة والأمثلة ومراجع API، طالع موقعنا التوثيقي.
Convention Over Configuration: مثل Ruby on Rails، تركز Loco على البساطة والإنتاجية بتقليل الحاجة إلى كتابة code مكرر. تستخدم إعدادات افتراضية منطقية، مما يتيح للمطورين التركيز على business logic بدلًا من قضاء الوقت في الإعدادات.Rapid Development: تهدف Loco إلى إنتاجية عالية للمطورين من خلال تقليل boilerplate code وتوفير APIs بديهية، مما يتيح التطوير السريع وبناء prototypes بأقل جهد.ORM Integration: نمذجة منطق عملك باستخدام entities قوية، مما يلغي الحاجة إلى كتابة SQL. حدد العلاقات والتحقق (validation) والمنطق المخصص مباشرة على entities لتحسين قابلية الصيانة والتوسعة.Controllers: تتولى Controllers معالجة طلبات الويب من حيث parameters و body و validation، وعرض response متوافقة مع المحتوى. نستخدم Axum لأفضل أداء وبساطة وقابلية توسع. تتيح لك Controllers أيضًا بناء middlewares بسهولة لإضافة Authentication والتسجيل ومعالجة الأخطاء قبل تمرير الطلبات إلى main controller actions.Views: يمكن لـ Loco التكامل مع templating engines لإنشاء محتوى HTML ديناميكي من templates.Background Jobs: تنفيذ المهام المُكثفة (compute أو I/O) في الخلفية باستخدام Redis-backed queue أو threads. إنشاء worker بسيط مثل تنفيذ دالة perform لـ Worker trait.Scheduler: يُبسّط نظام crontab التقليدي المُعقّد، مما يجعله أكثر أناقة وسهولة لجدولة المهام أو shell scripts.Mailers: يقوم mailer بتسليم البريد الإلكتروني في الخلفية باستخدام البنية التحتية لـ background worker في Loco، لتكون العملية سلسة تمامًا.Storage: في Loco Storage، نُسهّل التعامل مع الملفات بطرق متعددة: in-memory، على القرص، أو من خلال خدمات سحابية مثل AWS S3 و GCP و Azure.Cache: توفر Loco طبقة cache لتحسين أداء التطبيق عن طريق تخزين البيانات كثيرة الاستخدام.لمزيد من الميزات، طالع موقعنا التوثيقي.
cargo install loco
cargo install sea-orm-cli # Only when DB is needed
الآن يمكنك إنشاء تطبيقك الجديد (اختر "SaaS app"):
❯ loco new
✔ ❯ App name? · myapp
✔ ❯ What would you like to build? · Saas App with client side rendering
✔ ❯ Select a DB Provider · Sqlite
✔ ❯ Select your background worker type · Async (in-process tokio async tasks)
🚂 Loco app generated successfully in:
myapp/
- assets: You've selected `clientside` for your asset serving configuration.
Next step, build your frontend:
$ cd frontend/
$ npm install && npm run build
الآن cd إلى myapp وشغّل تطبيقك:
$ cargo loco start
▄ ▀
▀ ▄
▄ ▀ ▄ ▄ ▄▀
▄ ▀▄▄
▄ ▀ ▀ ▀▄▀█▄
▀█▄
▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄ ▀▀█
██████ █████ ███ █████ ███ █████ ███ ▀█
██████ █████ ███ █████ ▀▀▀ █████ ███ ▄█▄
██████ █████ ███ █████ █████ ███ ████▄
██████ █████ ███ █████ ▄▄▄ █████ ███ █████
██████ █████ ███ ████ ███ █████ ███ ████▀
▀▀▀██▄ ▀▀▀▀▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀ ██▀
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
https://loco.rs
listening on port 5150
Locobackend مدعوم بإطار Locoالشكر لهؤلاء المساهمين الرائعين:
<a href="https://github.com/loco-rs/loco/graphs/contributors"> </a> </div>