laravel-enso/core
最新稳定版本:12.2.13
Composer 安装命令:
composer require laravel-enso/core
包简介
The backend shell of a Laravel Enso application
README 文档
README
Description
Core is the backend shell of a Laravel Enso application.
It aggregates the packages required for a standard Enso installation, registers the framework-level service providers and middleware stack, exposes the base authentication and SPA endpoints, builds the frontend boot state, manages user preferences, publishes shared assets and mail resources, and provides a handful of operational commands used across Enso projects.
It is the package that turns the rest of the Enso ecosystem into a coherent application runtime.
Installation
This package is intended to be installed as the main backend dependency of an Enso application:
composer require laravel-enso/core
After installation, run the standard setup steps:
php artisan migrate php artisan db:seed
If you want to publish the package resources, the relevant tags are:
php artisan vendor:publish --tag=core-config php artisan vendor:publish --tag=core-seeders php artisan vendor:publish --tag=core-assets php artisan vendor:publish --tag=core-email
The package automatically:
- loads API routes
- loads migrations
- loads mail views
- registers Enso service providers
- configures the Eloquent factory resolver for package models
Features
- Provides the base Enso API shell, including guest meta, SPA home state, auth routes, and preferences routes.
- Provides a read-only
System > Loginstable for login history, with user and datetime interval filtering. - Registers the
coremiddleware group used by authenticated Enso routes. - Configures password policy defaults from
enso.auth.password. - Builds the SPA boot state from state providers discovered across Enso packages.
- Persists per-user global and route-level preferences.
- Publishes shared email templates and image assets.
- Registers operational commands for version reporting, storage resets, preference resets, preference upgrades, and app-update notifications.
- Integrates login tracking, password reset flows, websocket support, route authorization, localisation, impersonation, and action logging through the wider Enso stack.
Usage
The package exposes the guest meta endpoint:
route('meta');
Authenticated clients bootstrap the SPA state through:
route('core.home.index');
Preferences can be updated per route or globally through:
route('core.preferences.store', ['route' => 'administration.users.index']); route('core.preferences.reset');
Useful built-in commands:
php artisan enso:version php artisan enso:preferences:reset php artisan enso:preferences:update-global php artisan enso:storage:reset php artisan enso:announce-app-update
The frontend counterpart for the API shell and shared UI runtime lives in the Enso UI package:
::: warning Note
core.home.index does not return a Blade page. It returns the merged state payload produced by the Enso state builder, grouped by frontend store.
:::
API
Routes
Guest / auth endpoints:
GET /api/metaPOST /api/loginPOST /api/password/emailPOST /api/password/resetPOST /api/logout
Authenticated core endpoints:
GET /api/core/homePATCH /api/core/preferences/store/{route?}POST /api/core/preferences/reset/{route?}
Authenticated system login table endpoints:
GET /api/system/logins/initTableGET /api/system/logins/tableDataGET /api/system/logins/exportExcel
Middleware
Aliases:
verify-active-statexss-sanitizerensure-frontent-requests-are-stateful
core middleware group:
VerifyActiveStateActionLoggerImpersonateVerifyRouteAccessSetLanguage
State System
State is built through:
LaravelEnso\Core\Services\State\BuilderLaravelEnso\Core\Services\State\Source
It scans configured vendors from:
config('enso.state.vendors')
Built-in state providers include:
MetaPreferencesThemesWebsockets
Preferences
Model:
LaravelEnso\Core\Models\Preferences
Capabilities:
- route-level local preferences
- global preferences
- theme updates
- language updates
- reset to factory defaults
Commands
enso:version(works with a github token, if neccesary)enso:preferences:resetenso:preferences:update-globalenso:storage:resetenso:announce-app-update
Events and Notifications
Events:
LaravelEnso\Core\Events\LoginLaravelEnso\Core\Events\AppUpdate
Notifications:
PasswordExpiresSoonResetPassword
Login History
Model:
LaravelEnso\Core\Models\Login
The package records successful logins and exposes them through the system.logins Enso table. The table includes user, IP, user agent, and login datetime columns. Login history is read-only and supports filtering by user and by created_at interval.
Upgrade support:
LaravelEnso\Core\Upgrades\LoginCreatedAtIndexadds thelogins.created_atindex for existing installations.
Depends On
Required Enso packages:
laravel-enso/action-logger↗laravel-enso/charts↗laravel-enso/countries↗laravel-enso/data-export↗laravel-enso/helpers↗laravel-enso/impersonate↗laravel-enso/localisation↗laravel-enso/logs↗laravel-enso/menus↗laravel-enso/migrator↗laravel-enso/notifications↗laravel-enso/permissions↗laravel-enso/rememberable↗laravel-enso/roles↗laravel-enso/sentry↗laravel-enso/tables↗laravel-enso/upgrade↗laravel-enso/user-groups↗laravel-enso/users↗
Framework and external dependencies:
Contributions
are welcome. Pull requests are great, but issues are good too.
Thank you to all the people who already contributed to Enso!
统计信息
- 总下载量: 64.12k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 34
- 点击次数: 0
- 依赖项目数: 78
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2017-03-22