laravel-enso/core
Laravel Enso Core provides the foundational models, traits, helpers, middleware, and service providers shared across the Enso admin panel ecosystem. It supplies the base layer needed to build or extend Enso-powered Laravel back-office applications with consistent structure and reusable core function...
laravel-enso/core is best understood as a Composer dependency aggregator, not an application API you call directly. Its job is to pull in and constrain the Enso packages that provide the admin foundation: users, roles, permissions, menus, configuration, helpers, and related core services.
Start here:
composer.json constraints against your PHP and Laravel version. On a modern Laravel app, expect conflicts unless you are maintaining a legacy Enso installation or are prepared to fork/upgrade dependencies.vendor/laravel-enso/core/composer.json. This is the most important file. It tells you which Enso packages are actually installed and which versions are pinned.src/ServiceProvider.php or the provider declared in composer.json. This shows what gets registered, published, and bootstrapped.composer require laravel-enso/core
php artisan vendor:publish --provider="LaravelEnso\Core\ServiceProvider"
php artisan migrate
Use the actual provider class and publish tags from the installed package if they differ.database/seeders or the dependency packages’ Database/Seeders directories and run them in the documented order.If you are starting a brand-new project today, prefer the maintained Laravel Enso skeleton or a current fork rather than assembling laravel-enso/core manually. If you are maintaining an existing Enso app, this package is the version anchor for the whole admin stack.
Treat laravel-enso/core as the integration contract for the rest of the Enso modules.
Pin the whole Enso stack together. Do not upgrade one Enso package independently. Use the constraints from core’s composer.json and keep laravel-enso/* versions aligned. In practice, commit composer.lock and avoid broad * constraints.
Put application code in local modules, not in vendor packages. Follow Enso’s module shape for your own features: service provider, routes, migrations, permissions, menu entries, policies, and controllers. This keeps admin features discoverable and upgradeable.
Use Enso’s permission and menu model as the source of truth.
A typical workflow is:
Seed idempotently. Menu and permission seeders should use firstOrCreate/updateOrCreate patterns so repeated deployments do not duplicate entries. Keep seeders in version control alongside migrations.
Extend through configuration and providers. For app-specific behavior, prefer config overrides, published config files, service providers, and Enso extension points. Avoid editing files inside vendor/.
Reuse the auth/admin shell. Let Enso handle login, users, roles, permissions, and navigation. Build domain CRUD around those primitives rather than creating a parallel admin auth system.
Integrate domain packages as Enso-aware modules. If your app has invoices, projects, or tickets, expose them through Enso routes/controllers/tables and register their permissions/menus. This is where day-to-day leverage comes from: consistent admin conventions instead of one-off screens.
Deployment pattern. On each deploy: install locked dependencies, run migrations, run idempotent seeders if needed, rebuild frontend assets if the Enso version requires it, then clear config/route/view caches.
Upgrade pattern. Upgrade in a branch, run composer update laravel-enso/* --with-dependencies, inspect migrations and publishable assets, run the test suite, and manually smoke-test login, menus, permissions, and one CRUD flow.
composer show and vendor/laravel-enso/*.composer outdated and a security scanner before using it in production.php artisan config:clear
php artisan route:clear
php artisan view:clear
php artisan cache:clear
In production, follow with the appropriate cache:* commands if you cache config/routes.composer install.laravel-enso/core is the correct anchor. For a new admin panel, a maintained Enso fork or a modern Laravel admin stack will usually be less risky.How can I help you explore Laravel packages today?