Re@zul's
|

NativePHP: Laravel দিয়ে Desktop App তৈরি এখন অনেক সহজ

Last modified at 08 June, 2025

NativePHP কী?

NativePHP হলো এমন একটা framework যেটা Laravel কে ব্যবহার করে native desktop application বানাতে দেয় - Windows, macOS দুটোতেই।

যখন Laravel app রান হয়, তখন NativePHP সেটাকে Electron-like একটা shell এর মধ্যে রান করায়, যেখানে PHP, HTML, CSS, JS সবই কাজ করে।

এই framework এর কিছু powerful ফিচার:

  • Laravel ecosystem এর power পূর্ণভাবে পাওয়া যায়
  • PHP দিয়েই Desktop UI বানানো যায় (HTML+JS+Blade)
  • Shell access, system info, local storage সব কিছু ম্যানেজ করা যায়
  • Windows & macOS দুই platform এ build করা যায়
  • .exe and .dmg ফাইল generate করা যায় - just one command!

Getting Started: Laravel দিয়ে Native App

১. নতুন Laravel + NativePHP প্রজেক্ট তৈরি করুন:

composer create-project laravel/laravel my-app
 cd my-app
 composer require nativephp/electron
 php artisan native:install

এবার Electron download হবে, আর NativePHP setup হয়ে যাবে।

২. App রান করা:

php artisan native:serve

কিছু সেকেন্ডের মধ্যে আপনার Laravel app রান হবে একটা ডেস্কটপ উইন্ডোর মধ্যে।

UI কীভাবে বানাবো?

আপনার Laravel app এর মধ্যে যেভাবে Blade ব্যবহার করে web UI বানান, ঠিক সেইভাবেই।

উদাহরণ:

<!-- resources/views/welcome.blade.php -->

<html>
  <head>
    <title>My Desktop App</title>
  </head>
  <body>
    <h1>Welcome to NativePHP</h1>
    <p>This is a Laravel-powered desktop application.</p>
  </body>
</html>

Browser Open না করেই এই UI দেখা যাবে NativePHP window এর মধ্যে।


Hot Features (যা Desktop App বানাতে কাজে লাগবে)

১. System Notifications:

use Native\Laravel\Facades\Notification;

Notification::title('Hello!')
    ->message('Welcome to our app')
    ->show();

২. Menu Bar Integration:

use Native\Laravel\Facades\MenuBar;

MenuBar::create()
    ->label('App Menu')
    ->menu([
        MenuBar::item('Dashboard', route('dashboard')),
        MenuBar::separator(),
        MenuBar::item('Exit', fn () => exit()),
    ]);

৩. Shell Command রান করা (MySQL বা file management):

use Native\Laravel\Facades\Shell;

Shell::exec('mkdir storage/backup');

৪. App Launch এ কাজ করা:

public function booting()
{
    Notification::title('Launching...')
        ->message('App is starting up.')
        ->show();
}

Build কিভাবে করবো?

php artisan native:build windows

এই কমান্ড রান করলে output/ ফোল্ডারে .exe ফাইল পাবেন যা customer কে দেওয়া যাবে।

macOS এর জন্য php artisan native:build macos ব্যবহার করুন।

PHP দিয়ে Desktop App! এটা কিভাবে সম্ভব?

NativePHP internally PHP + Node + Electron কে combine করে কাজ করে।

  • Laravel সব logic handle করে
  • Electron UI render করে
  • PHP দিয়ে system-level কাজও করা যায়

এটা developer দের জন্য একটা huge power unlock করেছে - কোনো আলাদা language শিখতে হচ্ছে না, Laravel দিয়েই সব হচ্ছে!

Real Life Use Cases

  • Inventory বা POS desktop software
  • File backup tool
  • Offline content viewer
  • Local DB driven tools (যেমন MySQL portable bundle করে ব্যবহার করা যায়)

স্পন্সরশিপ এবং জনপ্রিয়তা

NativePHP ইতিমধ্যে GitHub-এ $100K+(সর্বশেষ মে, ২০২৫ ইং) sponsorship পেয়েছে, যা প্রমাণ করে Laravel developer দের মধ্যে এর চাহিদা কেমন।

বোনাস টিপস

আপনি চাইলে NativePHP এর সাথে portable MariaDB ব্যবহার করে fully standalone .exe তৈরি করতে পারেন - যেখানে database, Laravel app, Electron সব একসাথে packaged থাকবে। Installation ছাড়া শুধু .exe double-click করলেই কাজ শুরু।

শেষ কথা

Laravel developer হয়েও এতদিন desktop app বানাতে পারেননি? এখন পারবেন!
NativePHP Laravel কে desktop world এ নিয়ে গেছে - একদম smooth developer experience দিয়ে। Native PHP বা লারাভেল নিয়ে কোন পরামর্শের প্রয়োজন হলে নক দিতে ভুলবেন না। Follow me on Github: https://github.com/reazul-islam/

Tags : Laravel