Installation
Install Adminix with Composer.
Laravel 12 requires PHP >=8.2; Laravel 13 requires PHP >=8.3. Adminix also requires the PDO, mbstring, and SimpleXML extensions.
MongoDB Level 1 is optional and does not change these SQL installation requirements. Install mongodb/laravel-mongodb and ext-mongodb only when the application uses an explicit MongoDB Eloquent model datasource, and keep the default connection plus standard Adminix storage on SQL. Follow the exact topology and tested-version matrix in MongoDB Level 1 compatibility.
Laravel loads the package service provider through Composer auto-discovery, so normal applications do not register it manually. Only when Composer package discovery is disabled, add the provider to bootstrap/providers.php:
Publish the package config and assets with the installer command.
If the project uses Laravel Boost, run Boost discovery after installing or updating Adminix so the package guidelines and Adminix development skill become available to agents.
Adminix exposes resources/boost/guidelines/core.blade.php for package usage rules and resources/boost/skills/adminix-development/SKILL.md for module-development workflow. Use these resources when generating or editing Adminix page providers, modules, lists, resources, charts, actions, and tests in the parent Laravel app.
Use --examples when you want to publish example page providers. The installer also accepts --force, but that option overwrites both published config and assets. Prefer a group-specific vendor:publish command when only one group needs refreshing.
You can still publish each group manually.
Publish Adminix assets.
The laravel-assets tag publishes Adminix CSS, fonts, runtime JavaScript, the local jQuery runtime used by the package shell, lazy-loaded CKEditor 5 runtime files, and optional local vendor assets for Bootstrap, Bootstrap Icons, Chart.js, Popper, and Bootstrap JavaScript. It does not publish CKEditor samples or non-runtime CKEditor documentation into the consuming app's public directory.
Adminix uses CDN-hosted vendor assets by default. For CDN-free installations, set adminix.assets.mode or ADMINIX_ASSET_MODE to local, then publish assets and run Doctor:
Optionally publish example page providers.
Authorization
Skip this section only if you explicitly allow access without authorization by setting no_auth_access to true. Do not enable no_auth_access in production.
Run migrations.
The package adds users.is_admin only when that column is missing and users exists at migration time. An idempotent forward migration also repairs an existing users table when the historical package migration is already recorded but the column is absent. An application-owned existing column and its data are left unchanged. Adminix migrations intentionally preserve is_admin on rollback because the package cannot prove that it owns an existing application column; remove it only through an application migration when that is really intended. If an application intentionally creates users only after all Adminix migrations have been recorded, add is_admin in that later application migration instead.
Add the AdminixUser trait to your user model and implement AdminixUserInterface. Usually the model is App\Models\User.
The trait supplies the default is_admin === true criterion and casts the database-backed is_admin attribute to boolean. An explicit cast already defined by the application is preserved. Override getAdminCriteria() when the application uses a different server-side administrator policy. Boolean criteria safely recognize database-hydrated boolean 0/1 values; non-boolean criteria remain strict.
In config/adminix.php, make sure that admin_user_model points to your user model.
Robots.txt
Optionally disallow indexing Adminix pages for search engines in robots.txt.
After installation, configure the pages and menu of your admin panel. For production projects, also review Security.