sunrice / admin
An admin panel framework for Laravel: auth, users and roles, resources, custom React pages, settings, media, activity and security, and AI access.
Requires
- php: ^8.4
- ext-tokenizer: *
- illuminate/contracts: ^13.0
- illuminate/support: ^13.0
- inertiajs/inertia-laravel: ^3.0
- intervention/image: ^3.0
- laravel/mcp: ^1.0
- league/commonmark: ^2.6
- spatie/laravel-permission: ^8.0
- symfony/html-sanitizer: ^7.3 || ^8.0
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
An admin panel framework for Laravel. Describe screens in PHP, add React pages where you need them, and get sign-in, users and roles, settings, media, an activity log, security alerts and AI access out of the box. It works in any Laravel app; sunrice/cms is a plugin for it.
Developed in Digital-Citra-Kreatif/sunrice; this package's own repository is a read-only copy. In development, before 1.0.
Features
- Signing in: login, two-factor login by emailed code, password reset, three-way brute-force protection; only accounts with
sunrice.accessget in. - Users and roles on spatie/laravel-permission, with permissions declared in code, default roles, and nobody granting more than they have.
- Resources: list and form screens for Eloquent models (search, filters, sorting, row and bulk actions, CSV export, relation and rich text fields), guarded by policies or permissions.
- Your own pages in React 19 with Inertia, built with
@imajiner/admin-sdkon the panel's components and design language. - Settings sections with typed properties and encrypted secrets; Branding (name, logo, font, colour, sign-in page) and Mail (with a test email) built in.
- Dashboard widgets, a command palette, per-user table preferences, edit locks.
- Media library: folders, uploads checked for scripts, image sizes, usage tracking, optimizing images.
- Activity log and security: security events, email alerts, account locks, security headers, captcha.
- AI access: tokens and an MCP endpoint where agents work with the user's permissions; tools for plugins.
- Help: the developer docs and a bilingual user guide inside the panel.
- Plugins: a small, checked contract for packages that add to the panel.
Installing
PHP 8.4+, Laravel 13.
composer require sunrice/admin php artisan sunrice:install --roles
The command writes your panel provider (app/Providers/AdminPanelProvider.php) and adds Spatie\Permission\Traits\HasRoles to your user model. The full steps: Installation.
Assets
The panel's JavaScript and CSS are built in dist/. Publish them after installing and after every update:
php artisan sunrice:assets