Laravel Web Installer | A Web Installer Package
Do you want your clients to be able to install a Laravel project just like they do with WordPress or any other CMS? This Laravel package allows users who don't use Composer, SSH etc to install your application just by following the setup wizard. The current features are :
- Check For Server Requirements.
- Check For Folders Permissions.
- Ability to set database information.
- .env text editor
- .env form wizard
- Migrate The Database.
- Seed The Tables.
- From your projects root folder in terminal run:
composer require rachidlaasri/laravel-installer
- Register the package
-
Laravel 5.5 and up Uses package auto discovery feature, no need to edit the
config/app.php
file. -
Laravel 5.4 and below Register the package with laravel in
config/app.php
underproviders
with the following:
'providers' => [
RachidLaasri\LaravelInstaller\Providers\LaravelInstallerServiceProvider::class,
];
- Publish the packages views, config file, assets, and language files by running the following from your projects root folder:
php artisan vendor:publish --tag=laravelinstaller
/install
/update
-
Install Routes Notes
- In order to install your application, go to the
/install
route and follow the instructions. - Once the installation has ran the empty file
installed
will be placed into the/storage
directory. If this file is present the route/install
will abort to the 404 page.
- In order to install your application, go to the
-
Update Route Notes
- In order to update your application, go to the
/update
route and follow the instructions. - The
/update
routes countes how many migration files exist in the/database/migrations
folder and compares that count against the migrations table. If the files count is greater then the/update
route will render, otherwise, the page will abort to the 404 page.
- In order to update your application, go to the
-
Additional Files and folders published to your project :
File | File Information |
---|---|
config/installer.php |
In here you can set the requirements along with the folders permissions for your application to run, by default the array cotaines the default requirements for a basic Laravel app. |
public/installer/assets |
This folder contains a css folder and inside of it you will find a main.css file, this file is responsible for the styling of your installer, you can overide the default styling and add your own. |
resources/views/vendor/installer |
This folder contains the HTML code for your installer, it is 100% customizable, give it a look and see how nice/clean it is. |
resources/lang/en/installer_messages.php |
This file holds all the messages/text, currently only English is available, if your application is in another language, you can copy/past it in your language folder and modify it the way you want. |
- If you have any suggestions please let me know : https://github.com/RachidLaasri/LaravelInstaller/pulls.
- Please help us provide more languages for this awesome package please send a pull request https://github.com/RachidLaasri/LaravelInstaller/pulls.
- Cannot figure it out? Need more help? Here is a video tutorial: Laravel Installer by Devdojo
Please see CHANGELOG for more information on what has changed recently.
You're free to use this package, but if it makes it to your production environment I would highly appreciate you buying the world a tree.
It’s now common knowledge that one of the best tools to tackle the climate crisis and keep our temperatures from rising above 1.5C is to plant trees. If you contribute to my forest you’ll be creating employment for local families and restoring wildlife habitats.
You can buy trees at offset.earth/treeware
Read more about Treeware at https://treeware.earth