أدلة خطوة بخطوة

أدلة الكيفية

شروحات عملية ومركّزة لمشكلات هندسية حقيقية — كل دليل مكتوب لتتمكن من اتباعه من البداية إلى النهاية وتشحن شيئاً يعمل.

50
دليل
50
البرمجة
البرمجة

كيفية نشر تطبيق Laravel على خادم VPS (Apache و MySQL)

نشر Laravel على خادم VPS يمنحك تحكمًا كاملًا في بيئة الخادم — إصدار PHP، الامتدادات، مهام cron، معالجات الطوابير، وكل شيء. سيأخذك هذا الدليل...

متوسط 14 دقيقة
اقرأ الدليل
البرمجة

كيفية إضافة دعم متعدد اللغات لتطبيق Laravel

بناء تطبيق Laravel يعمل بلغات متعددة أمر مباشر بمجرد أن تفهم أين يقع كل جزء: بادئات الروابط للتوجيه، ملفات الترجمة لنصوص الواجهة، middleware...

متوسط 11 دقيقة
اقرأ الدليل
البرمجة

كيفية إرسال رسائل بريد إلكتروني عبر Laravel

نظام Mail في Laravel يُغلّف مُرسِل PHP في واجهة برمجية نظيفة وقابلة للاختبار. تُعرّف كل بريد إلكتروني كـ Mailable class — مع موضوعه وقالبه و...

مبتدئ 9 دقيقة
اقرأ الدليل
البرمجة

كيفية جدولة المهام الدورية في Laravel

مُجدوِل المهام في Laravel يتيح لك تعريف جميع مهام cron بلغة PHP — لا حاجة لتعديل crontab الخادم عند كل مهمة جديدة. تسجّل إدخالًا واحدًا في c...

مبتدئ 8 دقيقة
اقرأ الدليل
البرمجة

كيفية رفع الملفات وتخزينها في Laravel

تجريد نظام الملفات في Laravel يجعل رفع الملفات أمرًا مباشرًا وقابلًا للتبديل. سواء كنت تخزّن الملفات محليًا، على القرص public، أو على Amazon...

مبتدئ 9 دقيقة
اقرأ الدليل
البرمجة

كيفية بناء واجهة REST API في Laravel باستخدام Sanctum

Laravel Sanctum هو أخف طريقة للمصادقة القائمة على الرموز (tokens). بعكس Passport، يأتي Sanctum مدمجاً مع Laravel ولا يحتاج إلى بنية OAuth —...

متوسط 16 دقيقة
اقرأ الدليل
البرمجة

كيفية تخزين استعلامات قاعدة البيانات المكلفة مؤقتاً في Laravel

لكل رحلة إلى قاعدة البيانات تكلفة. للبيانات التي نادراً ما تتغير — الإعدادات، الفئات، المنشورات الشائعة، قوائم التنقل — تشغيل نفس الاستعلام...

متوسط 10 دقيقة
اقرأ الدليل
البرمجة

كيفية تشغيل المهام في الخلفية باستخدام طوابير Laravel

كل شيء لا يجب أن يحدث قبل أن تتمكن من الرد على المستخدم ينتمي إلى طابور. إرسال بريد ترحيب، تغيير حجم صورة مرفوعة، استدعاء واجهة API خارجية،...

متوسط 12 دقيقة
اقرأ الدليل
البرمجة

كيفية ترحيل وبذر البيانات بأمان في Laravel

الـ migrations والـ seeders تحل مشكلتين مختلفتين. الـ migrations تدير مخطط قاعدة البيانات — الجداول والأعمدة والفهارس والمفاتيح الخارجية. هي...

مبتدئ 9 دقيقة
اقرأ الدليل
البرمجة

كيفية تشفير كلمات المرور بشكل صحيح في PHP

تخزين كلمات المرور بشكل خاطئ هو أحد أكثر الأخطاء التي قد يرتكبها مطور تأثيراً وعواقب. اختراق قاعدة بيانات بكلمات مرور نصية أو بتشفير ضعيف يك...

مبتدئ 7 دقيقة
اقرأ الدليل
البرمجة

كيفية تأخير الأحداث (Debounce) في JavaScript

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

مبتدئ 7 دقيقة
اقرأ الدليل
البرمجة

كيفية جلب وعرض بيانات API باستخدام JavaScript النقي

Fetch API هي الطريقة الحديثة لإجراء طلبات HTTP في المتصفح. تُعيد Promises، وتتكامل بسلاسة مع async/await، وتأتي مدمجة في كل المتصفحات — لا ح...

مبتدئ 8 دقيقة
اقرأ الدليل
البرمجة

كيفية التعامل مع إرسال النماذج والتحقق منها في JavaScript

تتوقف معظم دروس النماذج عند منع الإرسال الافتراضي وقراءة قيم الحقول. النماذج الحقيقية أصعب: تحتاج إلى التحقق قبل الإرسال، وعرض الأخطاء بوضوح...

مبتدئ 9 دقيقة
اقرأ الدليل
البرمجة

كيفية تنفيذ التمرير اللانهائي باستخدام IntersectionObserver

التقنية الكلاسيكية للتمرير اللانهائي تستمع إلى حدث scroll وتستدعي getBoundingClientRect() للتحقق من اقتراب أسفل القائمة من viewport. هذا الن...

متوسط 10 دقيقة
اقرأ الدليل
البرمجة

كيفية حفظ البيانات في localStorage بأمان

localStorage أبسط طريقة لحفظ البيانات عبر تحديثات الصفحة في المتصفح — بلا سيرفر وبلا قاعدة بيانات. يخزن أزواج مفتاح-قيمة كنصوص، ويصمد بعد إغ...

مبتدئ 7 دقيقة
اقرأ الدليل
البرمجة

كيفية إضافة وضع داكن (Dark Mode) إلى موقعك

لم يعد الوضع الداكن ترفاً — المستخدمون يتوقعونه. التطبيق الصحيح يعتمد على CSS custom properties لكل الألوان، وخاصية data-theme على عنصر <...

مبتدئ 9 دقيقة
اقرأ الدليل
البرمجة

كيفية تحميل الصور بشكل كسول لتسريع تحميل الصفحة

يؤجل التحميل الكسول (Lazy Loading) الصور الخارجة عن الشاشة حتى يقترب المستخدم منها بالتمرير، مما يقلل حجم الصفحة الأولي ووقت التفاعل. يدعم ا...

مبتدئ 7 دقيقة
اقرأ الدليل
البرمجة

كيفية جلب البيانات في React باستخدام useEffect

جلب البيانات في React أمر مباشر بمجرد فهم دورة الحياة. يعمل useEffect بعد الرسم، تُطلق طلب fetch، وعندما يتم الـ Promise تحدّث الـ state. لك...

مبتدئ 9 دقيقة
اقرأ الدليل
البرمجة

كيفية إدارة الحالة العامة في React باستخدام Context و useReducer

Context يحل مشكلة محددة واحدة: إيصال الـ state إلى المكوّنات المتعشقة بعمق دون تمرير props عبر كل طبقة بينهما. إنه ليس مكتبة لإدارة الـ stat...

متوسط 12 دقيقة
اقرأ الدليل
البرمجة

كيفية بناء نموذج تفاعلي مع التحقق في React

النماذج المتحكم بها (Controlled Forms) — حيث يمتلك React قيمة كل حقل مدخل — هي النمط القياسي في React. المقايضة هي كود أكثر مقارنةً بالمدخلا...

مبتدئ 11 دقيقة
اقرأ الدليل
البرمجة

كيفية نشر تطبيق Next.js على Vercel

Vercel هو أسرع طريق من مشروع Next.js إلى رابط حي على الإنترنت. المنصة صنعها نفس الفريق الذي أنشأ Next.js، لذا تعمل ميزات App Router وServer...

مبتدئ 8 دقيقة
اقرأ الدليل
البرمجة

كيفية إضافة المصادقة لتطبيق Next.js باستخدام Auth.js

Auth.js (المعروف سابقًا بـ NextAuth.js) الإصدار 5 هو الطريقة المعيارية لإضافة المصادقة إلى مشاريع Next.js بـ App Router. يتولى عنك إدارة OAu...

متوسط 14 دقيقة
اقرأ الدليل
البرمجة

كيفية بناء واجهة REST API باستخدام Node.js و Express

لا يزال Express أكثر إطارات Node.js الويب انتشارًا. هو بسيط بتصميمه — يمنحك التوجيه والـ middleware وخادم HTTP. كل شيء آخر (التحقق، المصادقة...

مبتدئ 12 دقيقة
اقرأ الدليل
البرمجة

كيفية إضافة مصادقة JWT لواجهة Node.js API

JWT (JSON Web Tokens) هي الطريقة الأكثر شيوعًا للمصادقة في REST APIs عديمة الحالة. يُصدر الخادم token موقّعًا عند تسجيل الدخول؛ يرسله العميل...

متوسط 13 دقيقة
اقرأ الدليل
البرمجة

كيفية التحقق من مدخلات API في Node.js باستخدام Zod

كل قيمة في req.body غير موثوقة. يستطيع المستخدم إرسال حقول مفقودة، نوع خاطئ، سلسلة فارغة حيث تتوقع بريدًا إلكترونيًا، أو blob بحجم 10 ميغابا...

متوسط 9 دقيقة
اقرأ الدليل
البرمجة

كيفية تحديد معدل الطلبات في واجهة Node.js

بدون تحديد معدل الطلبات، تكون واجهة API الخاصة بك عرضة لهجمات القوة الغاشمة على نقاط تسجيل الدخول، والمتتبعات العدوانية التي تُثقل قاعدة الب...

متوسط 8 دقيقة
اقرأ الدليل
البرمجة

كيفية التعامل مع الأخطاء مركزياً في تطبيق Express

كتلات try/catch المتفرقة التي تُنسّق استجابات الأخطاء كل منها على حدة تمثّل عبئاً على الصيانة وتُنتج مخرجات غير متسقة حتماً. مركزة معالجة ال...

متوسط 9 دقيقة
اقرأ الدليل
البرمجة

كيفية منع حقن SQL في PHP

حقن SQL لا يزال واحداً من أكثر الثغرات استغلالاً على الإنترنت، ومع ذلك يمكن منعه كلياً. يحدث عندما يُضاف المدخل الخارجي مباشرةً إلى استعلام...

مبتدئ 8 دقيقة
اقرأ الدليل
البرمجة

كيفية إعداد CORS لواجهة API بالشكل الصحيح

CORS (مشاركة الموارد عبر الأصول) تُطبَّق من قِبَل المتصفح، ليس الخادم. واجهة API الخاصة بك لا "تحجب" الطلبات العابرة للأصول — المتصفح يفعل ذ...

متوسط 9 دقيقة
اقرأ الدليل
البرمجة

كيفية إدارة متغيرات البيئة بأمان في Node.js

متغيرات البيئة هي الطريقة التي تُبقي بها الأسرار خارج الكود المصدري. كلمة مرور قاعدة بيانات مُدمجة في مستودع عام تنكشف لحظة رفعها، وإزالتها...

مبتدئ 6 دقيقة
اقرأ الدليل
البرمجة

كيفية توسيط عنصر في CSS (الطريقة الحديثة)

كان توسيط العناصر في CSS موضع سخرية لسنوات. أما اليوم فهو بسيط حقاً — شرط أن تستخدم الأداة الصحيحة. يغطي هذا الدليل كل الأساليب الحديثة: Fle...

مبتدئ 5 دقيقة
اقرأ الدليل
البرمجة

كيفية بناء تخطيط متجاوب باستخدام CSS Grid

CSS Grid هو أقوى نظام تخطيط أُضيف إلى CSS على الإطلاق. سطر واحد — grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) — يُنشئ شبكة ب...

مبتدئ 10 دقيقة
اقرأ الدليل
البرمجة

كيفية بناء رأس صفحة ثابت يختفي عند التمرير

رأس صفحة يلتصق بالأعلى أثناء التمرير بات أمراً بديهياً. أما رأس الصفحة الذي يختفي بذكاء حين تمرر للأسفل — مستردّاً مساحة الشاشة — ويعود للظه...

متوسط 8 دقيقة
اقرأ الدليل
البرمجة

كيفية تحريك العناصر عند التمرير

الحركات المُشغَّلة بالتمرير — حيث تتلاشى العناصر أو تنزلق للداخل عند دخولها نافذة العرض — هي من أكثر تفاصيل واجهة المستخدم فاعلية التي يمكنك...

متوسط 9 دقيقة
اقرأ الدليل
البرمجة

كيفية تنسيق حقول النماذج بشكل نظيف عبر المتصفحات

حقول النماذج هي أكثر عناصر HTML تفاوتاً في المتصفحات. كل متصفح يأتي بتنسيقاته الافتراضية الخاصة — padding مختلف، وحواف مدوّرة مختلفة، وأحجام...

مبتدئ 8 دقيقة
اقرأ الدليل
البرمجة

كيفية التراجع عن آخر commit في Git بأمان

للتو أجريت commit وندمت عليه فورًا — ملفات خاطئة، أو كود مكسور، أو رسالة بها خطأ إملائي. يمنحك Git عدة طرق للتراجع، والاختيار الصحيح بينها ي...

مبتدئ 6 دقيقة
اقرأ الدليل
البرمجة

كيفية حل تعارض الدمج في Git دون فقدان عملك

تحدث تعارضات الدمج عندما يُعدِّل فرعان السطور نفسها في الملف نفسه. لا يستطيع Git تحديد أي نسخة يحتفظ بها، لذا يتوقف ويطلب منك الاختيار. علام...

متوسط 9 دقيقة
اقرأ الدليل
البرمجة

كيفية كتابة رسائل commit جيدة في Git

رسالة الـ commit هي ملاحظة لنفسك في المستقبل (ولزملائك) تشرح سبب إجراء التغيير. الـ diff يُظهر الماذا؛ أما الرسالة فيجب أن تشرح اللماذا. الر...

مبتدئ 6 دقيقة
اقرأ الدليل
البرمجة

كيفية نشر موقع ساكن على GitHub Pages

GitHub Pages استضافة ساكنة مجانية مدمجة مباشرة في GitHub. لا خادم تُعدّه، ولا فاتورة لحركة المرور الصغيرة، وتحدث عمليات النشر تلقائيًا عند ك...

مبتدئ 7 دقيقة
اقرأ الدليل
البرمجة

كيفية إنشاء Git hook قبل الـ commit للتحقق من الكود

يشغّل الـ pre-commit hook سكريبتًا في اللحظة التي تكتب فيها git commit، قبل إنشاء أي commit. إذا خرج السكريبت بحالة غير صفرية، يُحظر الـ com...

متوسط 8 دقيقة
اقرأ الدليل
البرمجة

كيفية إعداد Nginx كوسيط عكسي لتطبيق Node

تطبيق Node الخاص بك يعمل على المنفذ 3000. يجلس Nginx أمامه ليتولى إنهاء TLS وتقديم الملفات الثابتة بأقصى سرعة، مع إمكانية تشغيل عدة تطبيقات...

متوسط 11 دقيقة
اقرأ الدليل
البرمجة

كيفية الحصول على شهادة SSL مجانية باستخدام Let's Encrypt

تُصدر Let's Encrypt شهادات TLS مجانية موثوقة من المتصفحات وتتجدد تلقائياً كل 90 يوماً. Certbot — العميل الرسمي — يُعدّل إعداد Nginx الخاص بك...

مبتدئ 8 دقيقة
اقرأ الدليل
البرمجة

كيفية وضع تطبيق Laravel في Docker مع PHP-FPM و Nginx

إعداد صورة واحدة تضم "PHP + Nginx + MySQL في حاوية واحدة" مغرٍ لكنه خاطئ — إنه يتعارض مع نموذج عمليات Docker، ويجعل التوسع مستحيلاً، ويضخّم...

متقدّم 16 دقيقة
اقرأ الدليل
البرمجة

كيفية إعداد CI/CD باستخدام GitHub Actions

تلتقط بيبلاين CI/CD الـ commits المعطوبة قبل وصولها للإنتاج وتنشر الكود الناجح تلقائياً. GitHub Actions مجاني للمستودعات العامة وسخي للخاصة،...

متوسط 13 دقيقة
اقرأ الدليل
البرمجة

كيفية أتمتة النسخ الاحتياطي لقاعدة بيانات MySQL باستخدام Cron

النسخ الاحتياطي اليدوي يفشل في نهاية المطاف. مهمة cron لـ mysqldump تعمل الساعة 2 صباحاً مضغوطة، محتفظاً بها 7 أيام، منسوخة خارج الخادم — لا...

متوسط 9 دقيقة
اقرأ الدليل
البرمجة

كيفية تصميم مخطط قاعدة بيانات نظيف لميزة جديدة

معظم أخطاء المخطط تحدث قبل كتابة سطر واحد من الكود — حين يتخطى أحدهم خطوة التصميم ويذهب مباشرة إلى الـ migrations. المخطط السيئ يخلق ديناً ت...

متوسط 12 دقيقة
اقرأ الدليل
البرمجة

كيفية اكتشاف وإصلاح استعلامات MySQL البطيئة باستخدام EXPLAIN

استعلام يستغرق 20 ميللي ثانية في بيئة التطوير قد يستغرق 8 ثوانٍ في الإنتاج حين يبلغ الجدول مليون صف. الفجوة بين الحالتين غالباً تكون فهرساً...

متقدّم 13 دقيقة
اقرأ الدليل
البرمجة

كيفية إضافة الفهارس الصحيحة لقاعدة البيانات

الفهارس هي أقوى أداة أداء متاحة للمطور دون لمس كود التطبيق — فهرس واحد في المكان الصحيح يمكنه تحويل استعلام من 10 ثوانٍ إلى 10 ميللي ثانية....

متوسط 10 دقيقة
اقرأ الدليل
البرمجة

كيفية تصحيح كود Node.js في VS Code باستخدام نقاط التوقف

معظم المطورين يُصحّحون Node.js بنفس الطريقة التي تعلموا بها البرمجة: console.log في كل مكان. ينجح الأمر — حتى يكون الخطأ داخل حلقة بـ 10,000...

مبتدئ 7 دقيقة
اقرأ الدليل
البرمجة

كيفية تنسيق كود JavaScript باستخدام Prettier و ESLint

تعليقات مراجعة الكود حول التنسيق — الفواصل الزائدة، أسلوب الاقتباس، المسافات البادئة — مضيعة لوقت الجميع. أتمتة التنسيق مع Prettier تُلغي فئ...

مبتدئ 7 دقيقة
اقرأ الدليل

هل تحتاج مساعدة في مشروعك؟

احجز استشارة مجانية لمدة 30 دقيقة لمناقشة تحدياتك التقنية واستكشاف الحلول معًا.