استكشف أقوى تقنيات 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 لحماية المحتوى.
  • مناسب للتعليم الإلكتروني أو منصات الفيديو حسب الطلب.

المدونة

تحديث Laravel 12.18.0

يونيو 17, 2025

تحديث Laravel 12.18.0 صدر نسخه Laravel 12.18.0 فيها شوية ميزات جامدة كده: توابع لتشفير وفك تشفير النصوص باستخدام Stringable ديركت في chain strings...

إزاي تستخدم Web Components ببساطة وذكاء

يوليو 06, 2025

إزاي تستخدم Web Components ببساطة وذكاء كتير من المطورين بيفكروا إن Web Components معمولة عشان تبقى بديل كامل لفريموركات زي React أو Vue. بس الحقيق...

تذكير بالمهام مع Laravel وMongoDB

يونيو 30, 2025

📌 بناء تطبيق تذكير مهام المقال ده بيشرح إزاي نعمل تطبيق Laravel يستخدم MongoDB علشان يذكرك بالمهمات بتاعتك، مع تسجيل دخول، CRUD، وتذكير بالإيميلات...

Notifire + FCM مع Laravel

سبتمبر 13, 2025

لو محتاج تبعت إشعارات Push من تطبيق Laravel سواء للموبايل أو للويب، فالحل الأسرع والأبسط هو إنك تستخدم Notifire اللي بيربط Laravel مباشرةً مع Fireba...

ألوان في CSS - شرح مبسّط

يونيو 26, 2025

ألوان في CSS - شرح مبسّط النهارده هنتكلم عن الألوان في CSS: ازاي بنحددها، وخصوصًا الطرق الحديثة زي lab() وoklch(). 1. يعني إيه لون؟ مفيش حاجة اسم...

أحدث مميزات ECMAScript 2025

يونيو 30, 2025

أحدث مميزات ECMAScript 2025 في 25 يونيو 2025، تم اعتماد ES2025 رسميًا. الإضافات الجاية هتسهل عليك كتابة الكود: 1. 📦 Import Attributes و JSON Module...