استكشف أقوى تقنيات Laravel الحديثة: Inertia.js، View Creators، وHLS خطوة بخطوة
يوليو 27, 2025أدوات قوية تقدر تستخدمها لتطوير تطبيقات Laravel بشكل احترافي: Inertia.js v2، وView Creators، وحزمة Laravel HLS لبث الفيديوهات بأمان.
١. Inertia.js v2 مع Laravel Adapter و React
Inertia.js هو حل بيخليك تشتغل على تطبيقات SPA - Single Page Application باستخدام Laravel و React من غير ما تضطر تبني REST API بالكامل.
🔧 خطوات التثبيت:
composer require inertiajs/inertia-laravel
npm install @inertiajs/inertia @inertiajs/inertia-react react react-dom
⚙️ إعداد المشروع:
// resources/js/app.jsx
import { createInertiaApp } from '@inertiajs/inertia-react';
import { render } from 'react-dom';
createInertiaApp({
resolve: name => require(`./Pages/${name}`),
setup({ el, App, props }) {
render(, el);
},
});
🔥 أهم المميزات في Inertia v2:
inertia.ensure_pages_exist
: Laravel بيعرض خطأ واضح لو الـ Component مش موجود.php artisan inertia:check-ssr
: أمر جديد بيتأكد إن SSR شغال بعد النشر.form.resetAndClearErrors()
: بينضف البيانات والأخطاء معًا في استدعاء واحد.
🧪 مثال على التنقل باستخدام Inertia:
import { Inertia } from '@inertiajs/inertia';
Inertia.visit('/users', {
onSuccess: () => console.log('تم تحميل الصفحة'),
onError: () => alert('فيه مشكلة في التحميل'),
});
٢. View Creators في Laravel
View Creators بتسمحلك تحضّر البيانات مباشرة بعد إنشاء الـ View، قبل ما تبدأ Laravel في رندرتها.
🔧 طريقة الاستخدام:
use Illuminate\Support\Facades\View;
View::creator('dashboard', function ($view) {
$view->with('totalUsers', \App\Models\User::count());
});
📌 الفوائد:
- بيفصل منطق تجهيز البيانات عن الـ Controller.
- بيخلّي الـ View دايمًا فيه المعلومات المطلوبة من غير تكرار الكود.
٣. بث الفيديوهات باستخدام Laravel HLS
Laravel HLS هي حزمة بتخليك تحوّل فيديوهاتك المخزنة في Eloquent Models لبث مباشر أو عند الطلب باستخدام بروتوكول HLS، وبتدعم تشفير AES-128.
🔧 التثبيت:
composer require outl1ne/laravel-hls
⚙️ الاستخدام:
ضيف Trait في موديل الفيديو:
use Outl1ne\Hls\Traits\ConvertsToHls;
class Video extends Model {
use ConvertsToHls;
}
وبعدين تقدر تنفذ التحويل:
$video = Video::find(1);
$video->convertToHls();
🎯 المزايا:
- تحويل سريع وآمن للفيديوهات.
- دعم تشفير AES-128 لحماية المحتوى.
- مناسب للتعليم الإلكتروني أو منصات الفيديو حسب الطلب.
المدونة
لارافيل 12.16.0 - مميزات جديدة للمطورين
يونيو 03, 2025
لارافيل 12.16.0 - مميزات جديدة للمطورين 1. قاعدات تحقق جديدة: in_array_keys دلوقتي تقدر تتحقق إن الأراي فيه على الأقل مفتاح واحد من اللي انت محددهم...
هل لارافيل بطيء؟ تحسين أداء الاستعلامات والفهارس بأمثلة
يوليو 20, 2025
دليل عملي ومفصل مع أمثلة واقعية وعينات كود تسهّل عليك تفادي بطء Laravel وتحافظ على سرعة التطبيق. 1. 🧠 استدعي اللي محتاجه بس لو بتعمل DB::tabl...
وقّف نسخ الكود! اتعلم تستخدم Traits في Laravel صح
يوليو 01, 2025
🚫 وقّف نسخ الكود! لو عندك نفس المنطق في كذا Model أو Controller زي Slug أو Logging، Traits في Laravel هتوفر عليك تعب الكتابة والتكرار. 1. إيه هو...
تعزيز PHP Enums باستخدام archtechx/enums
يوليو 01, 2025
تعزيز PHP enums باستخدام حزمة archtechx/enums من PHP 8.1، ظهر نوع جديد اسمه “enums” بيخليك تعرف قيم ثابتة بأسماء مرمّزة زي statuses...
تاريخ React – استعراض شامل وتحليل تقني
يوليو 26, 2025
1. البدايات: النشأة داخل Facebook في عام 2011، واجه مهندسو Facebook تحديًا متزايدًا في صيانة واجهات المستخدم المعقدة والتفاعلية. تم تطوير مكتبة د...
مكونات واجهة المستخدم والتفاعل الأساسية في React Native
يوليو 01, 2025
مكونات واجهة المستخدم والتفاعل الأساسية في React Native React Native بتوفرلك مجموعة قوية من المكونات الجاهزة اللي تقدر تستخدمها لبناء تطبيقات موباي...
