💡 This built for my personal use. Tested on Laravel 10 & 11.
📖 The installation process is quite simple.
# Laravel 10
composer create-project laravel/laravel:^10.0 example-app
cd example-app
composer require novay/boilerplate
php artisan vendor:publish --provider="Novay\Boilerplate\BoilerplateServiceProvider" --tag="config"
php artisan boilerplate:install
# Laravel 11
laravel new example-app
cd example-app
composer require novay/boilerplate "1.0.56"
composer require protonemedia/laravel-splade "1.4.18"
php artisan vendor:publish --provider="Novay\Boilerplate\BoilerplateServiceProvider" --tag="config"
php artisan boilerplate:install
Do not forget to migrate our default migration:
php artisan migrate
The boilerplate:install
command will also build the frontend assets. Just like regular Laravel applications, you may run the Vite development server:
npm run dev
Additionally, you can follow this step:
// app/Providers/AppServiceProvider.php
...
class AppServiceProvider extends ServiceProvider
{
...
public function boot(): void
{
\Illuminate\Support\Facades\Schema::defaultStringLength(191);
\ProtoneMedia\Splade\Facades\Splade::defaultToast(function ($toast) {
$toast->autoDismiss(3);
});
}
...
}
// app/Http/Kernel.php (Laravel 10)
...
class Kernel extends HttpKernel
{
...
protected $middlewareGroups = [
'web' => [
...
\App\Http\Middleware\LangMiddleware::class,
],
...
];
...
}
// app/Models/User.php
...
// use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Laravel\Sanctum\HasApiTokens; # Laravel 10
use App\Traits\HasProfilePhoto;
use App\Traits\RandomIds;
class User extends Authenticatable // implements MustVerifyEmail
{
use HasApiTokens; # Laravel 10
use HasFactory, Notifiable;
use HasProfilePhoto, RandomIds;
protected $fillable = [
'name',
'email',
'password',
'phone',
'plain',
'address',
'last_login_ip',
'last_login_at'
];
protected $hidden = [
'password',
'plain',
'remember_token',
];
# Laravel 10
protected $casts = [
'password' => 'hashed',
'email_verified_at' => 'datetime',
'deleted_at' => 'datetime',
'last_login_at' => 'datetime',
];
# Laravel 11
protected function casts(): array
{
return [
'password' => 'hashed',
'email_verified_at' => 'datetime',
'deleted_at' => 'datetime',
'last_login_at' => 'datetime',
];
}
}
# Additional
composer require kirschbaum-development/eloquent-power-joins
📖 Complete documentation for Laravel Splade
You can use this toolkit right away:
- Preline (Tailwind)
- Iconify Design (Icon)
Please see CHANGELOG for more information what has changed recently.
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
The MIT License (MIT). Please see License File for more information.