Download the PHP package desino/boilerplate without Composer

On this page you can find all versions of the php package desino/boilerplate. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package boilerplate

Desino Laravel Boilerplate

Latest Version on Packagist Total Downloads License

In-house Laravel starter kit by Desino. Publishes authentication, user management, app configuration, Blade layouts, and related scaffolding into an existing Laravel application via a single Artisan command.

Current stable release: v1.1.0 (Packagist: latest stable tag)

Requirements

Installation

Install the package with Composer (installs the latest stable release, currently v1.1.0):

To require a minimum version or pin exactly:

If you already installed an older tag, update in place:

The service provider is auto-discovered. No manual registration is required.

Usage

Run the publish command once on a fresh or prepared Laravel app:

This copies stubs into your application (controllers, models, migrations, views, frontend assets, routes, middleware, seeders, config, and translations). Existing files are overwritten, including routes/web.php.

Recommended dependencies

The publish command adds laravel/ui to your app composer.json require section (from composer.require.stub) when it is not already present. Edit the stub to add more packages if needed.

Then run:

Frontend assets

The command publishes resources/js, resources/css, and resources/sass (jQuery, Bootstrap 5, Font Awesome, bootstrap-select, datepicker CSS). resources/js/bootstrap.js exposes jQuery and bootstrap on window.

If your app has no package.json, the full stub is published. Otherwise missing entries from package.json.stub are merged into devDependencies, scripts, and overrides (existing packages are left unchanged).

The publish command removes Laravel Vite defaults when present: vite.config.js, vite.config.ts, public/hot, public/build, and Vite-related npm packages/scripts (this boilerplate uses Laravel Mix instead).

Build compiled assets expected by the layout (public/css/app.min.css, public/js/app.min.js):

The publish command copies default images to public/images/ (logo.png, loading.svg, etc.). Add public/favicon.ico in the host app if needed.

Environment

Database

Ensure the default Laravel users migration has been run, then run the published migrations:

The boilerplate adjusts the users table (first_name, last_name, usertype, status, audit columns) and creates app_configs.

Providers

The package Desino\Boilerplate\BoilerplateServiceProvider is registered automatically via Composer (Artisan command only). You do not add it to bootstrap/providers.php.

The publish command copies CheckUserIsActive and CheckUserIsAdmin into app/Http/Middleware/. You must register them manually in bootstrap/app.php (steps below). The command does not modify bootstrap/app.php, because project layouts differ.

The publish command appends this to bootstrap/providers.php when missing (Laravel 11+):

On Laravel 10, add that class to the providers array in config/app.php if bootstrap/providers.php does not exist.

Middleware (Laravel 11, 12, and 13)

Laravel 11+ registers middleware in bootstrap/app.php inside ->withMiddleware(). The steps are the same for Laravel 11, 12, and 13.

Middleware Registration Purpose
CheckUserIsActive $middleware->web(append: [...]) Logs out deactivated users on every web request
CheckUserIsAdmin $middleware->alias([...]) as checkIfAdmin Admin-only routes (used with auth in routes/web.php)

Step 1 — Confirm middleware files exist

After php artisan make:desino-boilerplate, you should have:

Step 2 — Open bootstrap/app.php

At the top of the file, ensure this import exists (add it if missing):

Step 3 — Register inside ->withMiddleware()

Find the Application::configure(...) chain. It must include ->withMiddleware(...).

If you already have an empty closure (common default):

Replace the // (or add below it) with:

If ->withMiddleware() is missing entirely, add it to the configure chain (between ->withRouting(...) and ->withExceptions(...), for example):

Step 4 — Confirm routes use the alias

Published routes/web.php should wrap admin routes like this:

Step 5 — Clear caches (if routes/middleware were cached)

Troubleshooting

Symptom What to check
Inactive users can still browse CheckUserIsActive is inside web(append: [...]), not only registered as an alias
Admin routes return 404 / no middleware Alias is exactly checkIfAdmin and routes use 'checkIfAdmin', not 'admin'
Changes have no effect Run php artisan optimize:clear and retry in a private browser window

Laravel 10 only (legacy Http/Kernel)

If your app still has app/Http/Kernel.php and no bootstrap/app.php middleware configuration:

  1. Add to $middlewareAliases:

  2. Append to the web key in $middlewareGroups:

Seed defaults

Creates default pagination config (items_per_page_users = 25).

Post-install checklist

  1. composer update (installs laravel/ui after composer.json merge)
  2. Configure .env (database, MYAPP_FORCE_HTTPS)
  3. Register middleware in bootstrap/app.php (see Middleware)
  4. Confirm bootstrap/providers.php includes BladeDefaultVariablesServiceProvider (auto-added when possible)
  5. Confirm routes/web.php was published (or merge admin routes from the package stub)
  6. npm install && npm run prod (after package.json merge; see Frontend assets)
  7. php artisan migrate
  8. php artisan db:seed --class=DesinoBoilerplateSeeder
  9. php artisan config:cache (optional, production)

User roles and status

Constant Value Meaning
User::ROLE_ADMIN 1 Super admin
User::ROLE_NRMLUSR 2 Normal user
User::STATUS_ACTIVE 1 Can log in
User::STATUS_INACTIVE 0 Blocked (middleware logs out)

Published structure

Path Description
app/Http/Controllers/Auth/* Login, password reset, registration (register disabled in routes)
app/Http/Controllers/UserController.php User CRUD, activate/deactivate
app/Http/Controllers/AppConfigController.php Pagination and app settings
app/Http/Middleware/CheckUserIsActive.php Active account enforcement
app/Http/Middleware/CheckUserIsAdmin.php Admin-only routes
database/seeders/DesinoBoilerplateSeeder.php Default config and admin user
routes/web.php Web routes including auth and admin group
app/Models/User.php Extended user model
app/Models/AppConfig.php Key/value app configuration
app/Services/AppMiscService.php Flash messages, breadcrumbs, config helper
config/myapp.php App-specific settings
lang/en/messages.php UI translations
resources/js, resources/css, resources/sass Frontend source (compile to public/)
webpack.mix.js Published when missing (Laravel Mix build)

Configuration

config/myapp.php:

When true, AppServiceProvider forces https for generated URLs.

Routes (summary)

Method URI Name Access
GET / home Public
GET/POST /login, /logout, password reset Laravel UI Guest / auth
GET/POST /manual-login manuallogin Guest
GET/POST /appconfig appconfig.config Admin
GET/POST /users, /users/create, /users/edit/{id} users.* Admin
POST /users/activate, /users/deactivate, /users/delete users.* Admin

Public registration is disabled (Auth::routes(['register' => false])).

SFTP export (optional)

AppMiscService::exportToFTP() exports tables to CSV on the sftp_export disk. Configure config/filesystems.php for your SFTP server before use.

Security notes

Releasing on Packagist (maintainers)

Composer installs git tags, not branch master. After merging changes to master:

  1. Update CHANGELOG.md for the new version.
  2. Commit, push, then tag and push the tag (example v1.1.0):

  3. On packagist.org/packages/desino/boilerplate, click Update if the new tag does not appear within a few minutes (or enable the GitHub webhook in package settings for automatic updates).
  4. Verify: composer require desino/boilerplate:^1.1.0

First-time setup: submit https://github.com/desino/LaravelBoilerPlate on packagist.org/packages/submit.

See CHANGELOG.md for version history.

License

MIT — see LICENSE.

Support

Contact: [email protected]


All versions of boilerplate with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
laravel/framework Version ^10.0 || ^11.0 || ^12.0 || ^13.0 || ^14.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package desino/boilerplate contains the following files

Loading the files please wait ...