دليل الاستخدام
كل اللي محتاجه عشان تبدأ بورشة: من التسطيب لحد أول مشروع شغال على https، ولو حاجة وقفت معاك هتلاقي حلها هنا.
المتطلبات
- ويندوز 11، نسخة 64-bit.
- المحاكاة (Virtualization) مفعّلة من الـ BIOS.
- رام 6 جيجا (الحد الأدنى 4 جيجا).
- حوالي 6 جيجا مساحة فاضية على الهارد.
التسطيب
- حمّل ملف الـ setup من صفحة آخر إصدار.
- شغّل الملف وكمّل خطوات التسطيب.
لو ويندوز ظهّر تحذير SmartScreen: ده طبيعي مع أي ناشر جديد. دوس More info وبعدين Run anyway.
أول تشغيل
أول ما تفتح ورشة هيظهرلك معالج تجهيز من 4 خطوات:
- فحص الجهاز: كل بند بيظهر ناجح أو تحذير أو فشل، ومعاه طريقة الحل لو فيه مشكلة.
- تجهيز البيئة: ضغطة واحدة على تنفيذ الخطوة بتستورد بيئة لينكس وتثبّت الـ agent وتشغّل الخدمات. أول مرة بتاخد كام دقيقة.
- الشهادات: بتجهز https موثوقة لكل دومينات .test.
- خدمة Hosts: بتطلب صلاحية المدير (UAC) مرة واحدة بس، عشان الدومينات تتسجل تلقائي.
وكده خلصت، وتقدر تعمل أول مشروع.
إنشاء مشروع
من المواقع ← مشروع جديد، واختار النوع:
- Laravel جديد: مع starter kit (React أو Vue أو Svelte أو Livewire أو repo خاص بيك)، واختار Pest أو PHPUnit.
- WordPress أو Symfony.
- تطبيق Node: Next أو Nuxt أو Express، وورشة بتشغّل الـ npm script بتاعه.
- استنساخ من Git: حط رابط https. لو الـ repo خاص، حط رابط فيه personal access token. النوع بيتعرف تلقائي (Laravel / Symfony / WordPress / Node / PHP عادي)، و
composer installوملف .envوالـ key والـ migrations بيتعملوا لوحدهم. - تشغيل فولدر في مكانه: فولدر على ويندوز (مثلًا
C:\code\shop) أو فولدر جوهsites. مفيش نسخ: بتعدّل الكود في نفس المكان، ولو حذفت الموقع الفولدر بيفضل زي ما هو. أي فولدر تحطه فيsitesبيظهر في صفحة المواقع جاهز للربط بضغطة. - Python أو Go أو Ruby: مشروع بسيط شغال فورًا، أو من Git (Django وFlask وFastAPI وRails بيتعرفوا لوحدهم).
- نسخ مشروع من XAMPP مع الداتابيز بتاعته.
بعدها اختار نسخة PHP (7.4 أو 8.0 لحد 8.5) أو تلقائي (من .php-version أو composer.json)، ونسخة Node لو محتاجها، والداتابيز. المشروع بياخد دومين <name>.test على https موثوقة. ولو مشروعك قديم ومعتمد على .htaccess، اختار Apache بدل nginx (أو من قائمة المشروع بعدين).
العمليات في الخلفية
من قائمة المشروع … ← العمليات الخلفية تقدر تشغّل لكل مشروع:
- Queue:
php artisan queue:work - Scheduler:
php artisan schedule:work - Vite dev server مع hot reload (لازم تختار نسخة Node للمشروع).
- Reverb: سيرفر websockets بتاع Laravel (بعد
composer require laravel/reverb).
كل واحدة ليها السجلات (logs) بتاعتها.
التيرمينال والمحرر
من قائمة المشروع ← فتح التيرمينال بيفتح Windows Terminal جوه كونتينر الـ PHP بتاع المشروع، فـ php وcomposer وartisan بيكونوا بنفس نسخة المشروع. وفيه اختصار art بدل php artisan.
ومن نفس القائمة تقدر تفتح المشروع في VS Code أو PhpStorm.
أدوات المطوّر
- نافذة dump(): من صفحة dump() شغّلها، وأي
dump()أوdd()في الكود هيظهر هناك بدل ما يبوّظ الصفحة. لما تقفلها الـ dumps بترجع تظهر في الصفحة عادي. - سجل التطبيق: في صفحة السجلات اختار «سجل التطبيق» لأي مشروع Laravel أو Symfony أو WordPress، وفلتر الأخطاء بضغطة.
- خدمات إضافية: من صفحة الخدمات شغّل Meilisearch أو Typesense أو تخزين S3 (RustFS) أو Memcached أو MongoDB، وزرار بيانات الاتصال بيديك سطور
.envجاهزة للنسخ. - إضافات PHP: من صفحة PHP اختار الإضافات (imagick وsoap وmongodb وغيرها) واضغط تطبيق.
- أمر warsha في الترمينال: من صفحة الاختصارات ← إضافة الأمر للترمينال. بعدها من أي ترمينال جوه فولدر مشروعك:
warsha linkتشغّله علىname.test، وwarsha artisanوwarsha composerوwarsha npmتشغّل الأوامر جوه الموقع، وwarsha openوwarsha share. - Debug بـ Xdebug: من قايمة المشروع في المواقع اختار تشغيل Debug. البرنامج بيجهّز Xdebug للمشروع ده بس، وبيضيف إعداد
Warsha: Xdebugفي.vscode/launch.json. افتح المشروع في VS Code (ومعاه إضافة PHP Debug)، دوس F5، حط breakpoint وافتح الصفحة. لما تخلص اختار إيقاف Debug عشان المشروع يرجع لسرعته. - تعديل .env: من قايمة المشروع ← تعديل .env (في Symfony بيفتح
.env.local). النسخة القديمة بتتحفظ في فولدرenv-backupبرّه الكود عشان متدخلش git، والـ workers بيعيدوا التشغيل لوحدهم. - النقل من XAMPP أو Laragon أو Herd: من المواقع ← ترحيل اختار البرنامج القديم. ورشة بتلاقي فولدرات مشاريعك ونسخة PHP المناسبة لكل مشروع لوحدها، وتقدر تنقل الداتابيز معاها.
- Backup كل ليلة: من الإعدادات شغّل الـ backup الليلي. بيحفظ كل قواعد البيانات وكود كل مشروع (من غير
vendorوnode_modules)، وبيحتفظ بآخر 7. ولو كتبت فولدر في نسخة على ويندوز (زيD:\Backups\Warsha) النسخة بتتنسخ هناك كمان.
قواعد البيانات والإيميل
بيانات الاتصال بتظهر في صفحة المشروع. لو بتتصل من ويندوز (TablePlus أو DBeaver مثلًا) استخدم الهوست 127.0.0.1 والبورتات دي:
- MySQL 8.4:
3306 - MariaDB 11.4:
3307 - PostgreSQL 17:
5432
phpMyAdmin على http://pma.test، والإيميلات اللي بتطلع من مشاريع Laravel بتوصل Mailpit على http://mail.test بدل ما تتبعت لحد بجد.
صحة النظام والمساحة
صفحة صحة النظام بتوريك استهلاك الهارد والرام والبروسيسور لكل كونتينر. وزرار حرّر مساحة بيمسح طبقات الصور (image layers) والـ build cache اللي مش مستخدمة — عمره ما بيمسح مشاريع أو داتابيز.
للأمانة: المساحة اللي بتتوفر بتقدر ورشة تعيد استخدامها، لكن ملف الهارد الافتراضي على ويندوز مش بيصغر لوحده.
وفيه وضع اختياري لتوفير الرام بيوقف قواعد البيانات اللي مفيش مشروع شغال بيستخدمها.
تحديثات النظام: زرار افحص بيوريك تحديثات Ubuntu وDocker جوه البيئة، وحدّث بيثبّتها. لو التحديث فيه Docker نفسه المواقع بتقف ثواني وبترجع لوحدها، ومشاريعك وبياناتك مش بتتلمس.
تعارض البورتات
فحص الجهاز بيقولك اسم البرنامج اللي ماسك البورت، زي memurai.exe على 6379، أو httpd.exe بتاع XAMPP على 80/443، أو IIS.
لو ورشة محتاجة البورت ده، وقّف البرنامج أو الخدمة دي. تحذير بورت Redis من Memurai مش بيأثر على Redis بتاع ورشة.
التحديثات
البرنامج بيبلغك لوحده لما يكون فيه تحديث، أو من الإعدادات ← التحديثات ← التحقق من تحديث. بتشوف ملاحظات الإصدار قبل ما تثبّت.
بعد التحديث افتح البرنامج بس، والبيئة بتتحدث لوحدها — مش محتاج تعيد معالج التجهيز.
الترخيص
- تجربة 14 يوم بكل المزايا من غير بطاقة.
- اشتري اشتراك شهري أو سنوي من صفحة الدفع (فوري، فودافون كاش، انستاباي، كروت)، والمفتاح بيبدأ بـ
WARSHA-. - فعّل المفتاح من الإعدادات ← الترخيص.
- المفتاح الواحد بيشتغل على جهازين. لو هتنقل لجهاز جديد، اعمل إلغاء تفعيل على القديم الأول.
الدعم الفني
من صفحة عن البرنامج ← إنشاء تقرير بيتحفظ ملف نصي على سطح المكتب فيه معلومات تشخيص بس — من غير مفتاح الترخيص ولا باسوردات ولا كود مشاريعك. ابعته على support@warsha.site مع وصف المشكلة.
إزالة البرنامج
من إعدادات ويندوز ← Apps ← Warsha ← Uninstall.
المشاريع موجودة جوه بيئة ورشة، فصدّر أي مشروع محتاجه الأول (قائمة المشروع ← تصدير).
أسئلة شائعة
الموقع بيطلع 502 بعد الإنشاء على طول؟
استنى كام ثانية لحد ما الكونتينرات تشتغل و composer يخلص، وبعدين اعمل refresh.
المتصفح بيظهر تحذير شهادة؟
أعد خطوة الشهادات من معالج التجهيز أو من الإعدادات، وبعدين اقفل المتصفح وافتحه تاني.
ينفع أسيب XAMPP متسطب؟
آه، بس ماينفعش الاتنين يشتغلوا على البورتات 80 و443 و3306 في نفس الوقت. وقّف XAMPP وانت شغال بورشة.
فين ملفات مشروعي؟
في \\wsl$\warsha\home\warsha\projects\<name>\html، أو من قائمة المشروع ← فتح الفولدر.
بيشتغل من غير إنترنت؟
آه بعد التجهيز. إنشاء مشروع Laravel جديد أو استنساخ من Git محتاج إنترنت.
هل الكود بتاعي بيترفع في أي حتة؟
لأ. كل حاجة بتشتغل على جهازك. لينك المشاركة شغال بس وانت مفعّله.
ممكن أشغّل أكتر من نسخة PHP مع بعض؟
آه، كل مشروع بنسخته (7.4 أو 8.0 لحد 8.5) وكلهم شغالين في نفس الوقت.
ويندوز حذرني عند التسطيب؟
طبيعي مع ناشر جديد: دوس More info ثم Run anyway. التحديثات اللي بتوصلك من جوه البرنامج موقّعة رقميًا.