فِهرِس المكتبات الشخصية
- ثبّت Docker حسب نظام تشغيلك من خلال هذا الرابط
- ثبّت Mise حسب نظام تشغيلك من خلال هذا الرابط
- ثبّت مكتبة
gpgحسب نظام تشغيلك. على سبيل المثال، نفّذ هذا الأمر إذا كنت تستخدم نظام macOS: - ثبّت مكتبة
libpqحسب نظام تشغيلك. على سبيل المثال، نفّذ هذا الأمر إذا كنت تستخدم نظام macOS: - أضِف مكتبة
libpqإلى متغيرPATHحسب نظام تشغيلك باتباع التعليمات الموضّحة بعد تثبيت المكتبة. على سبيل المثال، نفّذ هذا الأمر إذا كنت تستخدم نظام macOS معZsh:
brew install gnupg
brew install libpq
echo 'export PATH="/opt/homebrew/opt/libpq/bin:$PATH"' >> /Users/{user}/.zshrc
- نفّذ الأمر التالي لنسخ مستودع المشروع إلى حاسبك:
- افتح سطر الأوامر داخل مجلد المشروع ونفّذ الأمر التالي لتثبيت الأدوات المطلوبة للتطوير من خلال
Mise: - نفّذ الأمر التالي لتثبيت اعتماديات المشروع وتشغيل خادم التطوير المحلّي:
- افتح الرابط
http://localhost:3000في متصفحك للوصول إلى الصفحة الرئيسية للمشروع
git clone [email protected]:ieasybooks/fehresi-web-app.git
mise install
mise dev
ستحصل على الأدوات التالية باتباعك للخطوات المذكورة أعلاه:
- Docker
- Mise
- gnupg
- libpq
- Ruby (3.4.4)
- Rails (8.0.2)
- Node.js (24.1.0)
- Yarn (4.9.1)
- PostgreSQL (17.5)
- Meilisearch (1.15.2)
- Redis (Valkey) (8.1)
يمكنك الوصول إلى الخدمات من خلال المنافذ التالية:
- PostgreSQL → 5433 (localhost:5433)
- Meilisearch → 7701 (localhost:7701)
- Redis → 6380 (localhost:6380)
وبمجرّد إيقاف تشغيل خادم التطوير المحلّي من خلال الضغط على Cmd+C أو Ctrl+C، ستتوقف خدمات Docker (PostgreSQL و Meilisearch و Redis) عن العمل تلقائيًا.
أُعِدّ هذا المشروع ليعمل مع محرر VSCode أو ما يشبهه من المحررات مثل Cursor و Windsurf وغيرهما. بمجرّد فتح المشروع في أحد هذه المحررات سيظهر لك إشعار يسألك "هل تريد تثبيت الإضافات المُوصى بها؟"، وإذا ضغطت على زر Install ستبدأ عملية تثبيت الإضافات الموجودة في ملف .vscode/extensions.json.
الإضافات المُوصى بها:
- Ruby LSP
- Rails DB Schema
- Rails I18n
- Tailwind CSS IntelliSense
- vscode-gemfile
- GitLens — Git supercharged
- Mise VSCode
- Stimulus LSP
- Live Preview
- SQLTools
- SQLTools PostgreSQL/Cockroach Driver
- vscode-icons
- Git Blame
كما أن إعدادات جميع هذه الإضافات موجودة مسبقًا في ملف .vscode/settings.json، لذا لا داعي لإعدادها يدويًّا.
ملاحظة: جميع المكتبات يجب أن تكون مُحددة بإصدار مُعيّن لضمان الاستقرار والتوافق.
- active_record_doctor
- annotaterb
- better_errors
- binding_of_caller
- factory_bot_rails
- hotwire-spark
- i18n-tasks
- rspec-rails
- rubocop-rake
- rubocop-rspec
- rubocop-rspec_rails
- shoulda-matchers
- simplecov-json
- simplecov
- webmock
- avo
- cloudflare-rails
- memory_profiler
- mission_control-jobs
- pg_query
- pghero
- rack-mini-profiler
- rails_performance
- solid_errors
- stackprof
- strict_ivars
بالإضافة إلى مكتبات إطار عمل Ruby on Rails الأساسية.
ملاحظة: جميع المكتبات يجب أن تكون مُحددة بإصدار مُعيّن لضمان الاستقرار والتوافق.
بالإضافة إلى مكتبات إطار عمل Ruby on Rails الأساسية.
ملاحظة: نسعى في هذا المشروع إلى المحافظة على تغطية كاملة (100%) للشيفرة المصدرية بحالات اختبار دقيقة ومفيدة.
- شغّل خادم التطوير من خلال تنفيذ الأمر
mise devأو ابدأ تشغيل خدمات Docker الخاصة بالمشروع من خلال تنفيذ الأمرmise docker:start - نفّذ الأمر
CI=1 bundle exec rspecلتشغيل حالات الاختبار - ستحصل على تقرير بنسبة تغطية الشيفرة المصدرية بحالات الاختبار ويمكنك تصفّح التقرير المُفصّل الموجود في
coverage/index.html - أوقف تشغيل خادم التطوير أو أوقف خدمات Docker إذا كنت شغّلتها من خلال تنفيذ الأمر
mise docker:stop