Panels, not just pages
A panel is a path, a navigation tree, a middleware stack and an access rule. Run one, or run an admin panel and a customer panel side by side, each with its own shell.
Core concepts
Resources, forms, tables, actions and dashboards defined in PHP and rendered by Vue. Built on Laravel 12 and 13, Inertia 3, Vue 3 and Tailwind 4 — with no REST layer to keep in sync.
A panel is a path, a navigation tree, a middleware stack and an access rule. Run one, or run an admin panel and a customer panel side by side, each with its own shell.
Core concepts
FormSchema, TableSchema and InfolistSchema live in PHP. Validation, queries, sorting, filtering and authorization run where the data is — Vue only renders what it is handed.
Forms and schemas
The frontend is published into your app, not hidden in vendor. Swap a column, a field, a page or the whole shell, and keep upgrading the PHP side.
Frontend customization
Panels, resources, pages, actions and widgets each ask a policy before they render or run. Negative security tests ship with the framework.
Authorization
Single database or database per tenant, a tenant switcher in the shell, scoped resources, tenant-aware queues, and a checklist for the leaks that matter.
Tenancy
panel:install scaffolds the first panel; make:panel-resource, make:panel-page and make:panel-widget write the rest. Caches for production, clears for development.
CLI reference
Quick start
PHP owns registration, routing, authorization, queries and validation. Vue owns rendering. Inertia is the only bridge — there is no REST layer to keep in sync.
$ composer require chocoalano/panel
$ php artisan panel:install
$ php artisan make:panel-resource ProductResource --model=Product
# → app/Panels/Admin/Resources/ProductResource.php
$ php artisan serve # then open /adminComposer pulls in the PHP side. Nothing is published yet.
panel:install publishes config and frontend, scaffolds a panel, and offers to create an account.
Sign in, then add your first resource with make:panel-resource.
Follow the tutorial
Build something
Looking for something specific? Every page is listed on the documentation index.