I'm always excited to take on new projects and collaborate with innovative minds.

Phone

+20 115 052 9992

Website

https://ibrahimahmed.online/

Social Links

أسرار استخدام Laravel Prompts لعمل أوامر Artisan تفاعلية ومميزة

أسرار استخدام Laravel Prompts لعمل أوامر Artisan تفاعلية ومميزة لو إنت شغال بـ Laravel ، أكيد قضيت ساعات بتكتب أوامر في الـ Terminal . أغلبنا متعود على الطريقة

أسرار استخدام Laravel Prompts لعمل أوامر Artisan تفاعلية ومميزة
Reading Count: 12

أسرار استخدام Laravel Prompts لعمل أوامر Artisan تفاعلية ومميزة

لو إنت شغال بـ Laravel، أكيد قضيت ساعات بتكتب أوامر في الـ Terminal. أغلبنا متعود على الطريقة التقليدية، تفتح الـ Command Line Interface (CLI)، تكتب اسم الأمر، وتلاقي شاشة سودة وكلام أبيض وأسود ممل. ساعات بنحتاج ناخد مدخلات من المستخدم وبنستخدم $this->ask() أو $this->choice()، لكن الصراحة، شكلها بقى قديم شوية ومبيحسسش المطور إنه بيستخدم تكنولوجيا حديثة.

هنا بييجي دور Laravel Prompts، المكتبة اللي غيرت قواعد اللعبة وخلت بناء أوامر Artisan تجربة ممتعة وجذابة بصرياً. في المقال ده، هناخد رحلة عملية عشان نحول أوامر الـ CLI العادية لأوامر تفاعلية احترافية.

ليه محتاج تستخدم Laravel Prompts؟

ببساطة، الـ UX (تجربة المستخدم) مش بس للـ Web، دي كمان للـ Developer Experience (DX). لما تعمل أداة لفريقك أو لنفسك، وتكون سهلة في الاستخدام، بتوفر وقت ومجهود كبير. Laravel Prompts بتديك إمكانيات زي:

  • اختيارات متعددة (Multi-select) بشكل شيك.
  • شريط تحميل (Progress Bar) احترافي.
  • بحث داخل القوائم (Searchable Select).
  • تصميم عصري متوافق مع أغلب أنواع الـ Terminals.

البداية: تثبيت المكتبة

المكتبة دي بقت جزء أصيل من Laravel 10.x و 11.x، فمش محتاج تعمل حاجة غير إنك تتأكد إنك شغال بآخر نسخة. لو مشروعك قديم شوية، ممكن تثبتها بسهولة عبر الـ Composer:

composer require laravel/prompts

كيفية عمل أوامر تفاعلية (Interactive Commands)

بدل ما تستخدم $this->ask()، تقدر تستدعي الدوال من Laravel\Prompts مباشرة. تعال نشوف مثال بسيط عشان نطلب من المستخدم اسمه:

use function Laravel\Prompts\text;

$name = text(
    label: 'اسمك إيه؟',
    placeholder: 'اكتب اسمك هنا...'
);

الجميل هنا إن الكود بقى نظيف ومقروء. مش بس كده، تقدر تعمل Validation فورية وأنت شغال:

$email = text(
    label: 'اكتب الإيميل الخاص بك',
    validate: ['email' => 'required|email']
);

إضافة القوائم والاختيارات المتقدمة

أكتر حاجة بنحتاجها هي الـ Select. تخيل بتعمل أمر ينقل البيانات من قاعدة بيانات للتانية، وعايز المستخدم يختار الجداول:

use function Laravel\Prompts\multiselect;

$tables = multiselect(
    label: 'اختار الجداول اللي عايز تعملها Export:',
    options: ['users', 'posts', 'comments', 'settings'],
    required: true
);

المستخدم هنا يقدر يتنقل بالأسهم ويختار اللي هو عايزه، وتجربة المستخدم بتكون سلسة جداً كأنه بيستخدم تطبيق UI عادي.

نصيحة من أخ لمبرمج زميل

يا صديقي، المبرمج الشاطر مش بس اللي بيكتب كود بيشتغل، المبرمج الشاطر هو اللي بيسهل حياته وحياة زمايله. Laravel Prompts أداة قوية جداً بتخلي أدواتك (Tools) اللي بتكتبها في الشركة تبان كأنها منتج احترافي. نصيحتي ليك إنك متكتفيش بالأوامر البسيطة، جرب تعمل Spinners عشان توضح حالة العمليات اللي بتاخد وقت طويل، واستخدم Confirm عشان تتأكد قبل تنفيذ العمليات الخطيرة زي مسح البيانات.

التقنية مش بس أكواد، التقنية تفاصيل صغيرة بتفرق في يومك. جرب المكتبة دي النهاردة في أقرب أمر بتطوره، وهتلاقي فرق كبير في الرضا عن شغلك.


Share

Related posts

Jul 19, 2026 • 1 min read
Reading Count: 11
إعداد نظام تعدد المستأجرين (Multi-Tenancy) باستخدام حزمة Spatie و Laravel

إعداد نظام تعدد المستأجرين (Multi-Tenancy) باستخدام حزمة Spatie و Laravel أهلاً بك يا صديقي المبرمج....

Jul 19, 2026 • 1 min read
Reading Count: 11
إزاي تراقب أداء تطبيقك وسيرفرك بـ Laravel Pulse من غير ما تدفع مليم؟

إزاي تراقب أداء تطبيقك وسيرفرك بـ Laravel Pulse من غير ما تدفع مليم؟ مين فينا كمبرمجين ممرش باللحظة...

Jul 18, 2026 • 1 min read
Reading Count: 10
إمتى تقول لـ Eloquent كفاية؟ وتنتقل لـ Query Builder؟

إمتى تقول لـ Eloquent كفاية؟ وتنتقل لـ Query Builder؟ بص يا سيدي، لو أنت مبرمج Laravel، أكيد وقعت في...