relayercore / laravel-installer
A beautiful, reusable web-based installer for Laravel applications
v1.1.0
2026-01-27 15:51 UTC
Requires
- php: ^8.2
- illuminate/support: ^10.0|^11.0|^12.0
- livewire/livewire: ^3.0
README
A beautiful, reusable web-based installer for Laravel applications. Perfect for CodeCanyon products and commercial Laravel apps.
Features
- 🎨 Beautiful, modern UI
- 📋 Configurable installation steps
- ✅ Server requirements checking
- 🗄️ Database configuration & Instant Connection Testing
- 👤 Admin account creation
- 🔄 Modular SOLID Architecture (Easy to extend)
- 🎯 Works with Laravel 10, 11 & 12
Installation
composer require relayercore/laravel-installer
Usage
1. Publish Configuration
php artisan vendor:publish --tag=installer-config
2. Publish Views (Optional - for customization)
php artisan vendor:publish --tag=installer-views
3. Configure
Edit config/installer.php:
return [ 'name' => 'My App', 'logo' => '/images/logo.png', 'requirements' => [ 'php' => '8.2', 'extensions' => ['pdo', 'mbstring', 'openssl', 'json'], ], 'writable_directories' => [ 'storage/app', 'storage/framework', 'storage/logs', 'bootstrap/cache', ], 'admin_model' => \App\Models\User::class, 'after_install' => function() { // Custom post-install logic }, ];
4. Access Installer
Navigate to /install in your browser.
Customization
Styling
Publish views and modify the Blade templates:
php artisan vendor:publish --tag=installer-views
Views are published to resources/views/vendor/installer/.
How It Works
- Middleware checks for
storage/installedfile - If missing, redirects all routes to
/install - Wizard guides through: Requirements → Permissions → Database → Admin → Done
- Creates
storage/installedmarker file - App runs normally
Security & Best Practices for CodeCanyon
If you are distributing your application (e.g., via CodeCanyon or zip file), follow these steps to ensure a secure installation experience:
- Include a
.envfile: Your zip file MUST include a.envfile in the root. - Set a "Boot Key": Inside that
.env, set a genericAPP_KEYwhich acts as the "boot key" to allow the installer wizard to load.APP_KEY=base64:YOUR_GENERIC_KEY_HERE
- Automatic Rotation: This installer automatically runs
php artisan key:generateas the final step, replacing your generic key with a unique, secure key for the customer.
This ensures your customers don't face "No application key" errors, while maintaining top-tier security.
MIT