dskripchenko/laravel-admin
| Install | |
|---|---|
composer require dskripchenko/laravel-admin |
|
| Latest Version: | v1.54.1 |
| PHP: | ^8.2 |
| Laravel: | 11 · 12 · 13 |
| License: | MIT |
| Last Updated: | Oct 24, 2026 |
| Links: | GitHub · Packagist |
dskripchenko/laravel-admin
A Laravel admin-panel constructor inspired by Orchid, with a Vue 3 SPA frontend.
Live demo: laravel-admin.dskripchenko.space — a shop and a blog with a few thousand records, a showcase where every field, layout and action shows its own source, and this documentation inside the panel. No sign-up: pick Administrator, Editor or Viewer on the login page; the data resets every hour.
Admin::resources([UserResource::class, ArticleResource::class]);
Admin::screen([ContactScreen::class, SystemStatusScreen::class]);
Admin::menu()->add(
MenuNode::make('content', 'Content')->icon('book')->children([
MenuNode::resource('articles'),
MenuNode::dashboard('analytics'),
]),
);
What's inside
- CRUD pipeline — declare an Eloquent model as a
Resource, get list/create/edit/view screens for free. - Custom Screens — non-CRUD pages (forms, dashboards, reports) with
Admin::screen(). Handles state, layout, command-bar, validation, permissions. - Hierarchical menu — fluent
Admin::menu()->add(MenuNode::...), any depth, auto-resolveresource()/screen()/dashboard(). - 30+ field types — Input/Number/Select/Combobox/DatePicker/ ColorPicker/FileUpload/Wysiwyg/Markdown/TranslatableInput/Repeater/ RelationSelect/Cascader/TreeSelect/Slug/KeyValue/TagsInput/...
- 15+ layouts — Rows/Columns/Tabs/Wizard+Step/Block/Modal/Drawer/ Wrapper/Infolist/Dashboard/Accordion/View/...
- Tables — sortable columns, presets, filters (input/date/switcher/ options/select-from-model), inline-edit, summary, saved views, group-by, polling, exports (CSV/XLSX/PDF).
- Dashboard — 8 widget types (Stats/Chart/RecentList/Markdown/ Iframe/Table/Heatmap/Gauge), per-user layout overrides, drag/resize, polling.
- Auth & RBAC — multi-guard; a separate
admin_userstable or your existing users (shared strategy), roles, 2FA TOTP, profile, impersonation, password reset, email verification. - Audit — append-only log of admin actions (
AuditLog+Loggabletrait). - Settings — singleton-style configuration screens.
- Notifications — bell badge + drawer (Database notifications).
- API tokens — Sanctum integration in Profile (conditional).
- Theming — light/dark + per-user preference,
@dskripchenko/uidesign tokens. - i18n — locale resolver (6-step priority),
TranslatableFieldbridge fordskripchenko/laravel-translatable. - Tenancy —
TenantResolver/TenantContext/TenantScopedtrait. Strategy is host-side; we provide the contract. - Plugins —
AdminPlugininterface; sister-packs use the same hook. - Testing —
AdminTestCase,ActsAsAdminandInteractsWithAdminResourcestraits. - OpenAPI 3.0 — generated from docblock
@input/@outputtags.
Install
composer require dskripchenko/laravel-admin
php artisan admin:install
That's it — the admin SPA ships prebuilt, no Node needed. Visit
/admin/login. Getting started walks through
the first resource and the custom-build mode for your own Vue components.
Adding it to an application that already has users, its own API or a proxy?
Read Adding the admin to an existing application —
including admin:install --shared, which lets your existing users sign in.
Documentation
- Getting started
- Adding the admin to an existing application
- Architecture
- Concepts: Resources · Screens · Widgets & Dashboards · Menu · Actions · Permissions · i18n · Tenancy
- Fields reference
- Layouts reference
- API reference
- Frontend extension
- Testing
- Migration guide
- Glossary
Stack
- PHP ^8.2
- Laravel 11 / 12 / 13
- Vue ^3.4 + TypeScript + Pinia + Vue Router
- Frontend — prebuilt SPA ~350 KB gz JS + ~35 KB gz CSS; the npm library entry for custom builds ~260 KB gz (Vue, Pinia and the UI kit external)
- WYSIWYG —
@dskripchenko/wysiwygby default; Quill and TinyMCE adapters ship in the npm package (/quill,/tinymce)
Sister-packs
Optional extensions, install only what you need:
| Package | Purpose |
|---|---|
dskripchenko/laravel-admin-starter |
User, Role and Audit Log resources |
dskripchenko/laravel-admin-media |
Media library (no Spatie/medialibrary dependency) |
dskripchenko/laravel-admin-health |
Health checks (no Spatie/laravel-health dependency) |
dskripchenko/laravel-admin-pulse |
Telemetry sampler (no laravel/pulse dependency) |
dskripchenko/laravel-admin-jobs |
Failed jobs / batches viewer |
Contributing
See CONTRIBUTING.md. PRs welcome.
License
MIT © Denis Skripchenko
Related Packages
An Inertia + Vue admin panel framework for Laravel: resources, tables, forms, in...
The open-source admin panel framework for Laravel, built for Inertia and Vue. De...
Server-driven admin panels for Laravel + Inertia.js. Define forms, tables, and p...
A powerful admin panel builder for Laravel using the VILT stack (Vue, Inertia, L...
Version History
| Version | Released | PHP | Laravel | License |
|---|---|---|---|---|
| v1.54.1 | ^8.2 | ^11.0 || | MIT | |
| v1.54.0 | ^8.2 | ^11.0 || | MIT | |
| v1.53.0 | ^8.2 | ^11.0 || | MIT | |
| v1.52.1 | ^8.2 | ^11.0 || | MIT | |
| v1.52.0 | ^8.2 | ^11.0 || | MIT | |
| v1.51.1 | ^8.2 | ^11.0 || | MIT | |
| v1.51.0 | ^8.2 | ^11.0 || | MIT | |
| v1.50.2 | ^8.2 | ^11.0 || | MIT | |
| v1.50.1 | ^8.2 | ^11.0 || | MIT | |
| v1.50.0 | ^8.2 | ^11.0 || | MIT | |
| v1.49.0 | ^8.2 | ^11.0 || | MIT | |
| v1.48.0 | ^8.2 | ^11.0 || | MIT | |
| v1.47.0 | ^8.2 | ^11.0 || | MIT | |
| v1.46.2 | ^8.2 | ^11.0 || | MIT | |
| v1.46.1 | ^8.2 | ^11.0 || | MIT | |
| v1.46.0 | ^8.2 | ^11.0 || | MIT | |
| v1.45.1 | ^8.2 | ^11.0 || | MIT | |
| v1.45.0 | ^8.2 | ^11.0 || | MIT | |
| v1.44.1 | ^8.2 | ^11.0 || | MIT | |
| v1.44.0 | ^8.2 | ^11.0 || | MIT | |
| v1.43.0 | ^8.2 | ^11.0 || | MIT | |
| v1.42.1 | ^8.2 | ^11.0 || | MIT | |
| v1.42.0 | ^8.2 | ^11.0 || | MIT | |
| v1.41.0 | ^8.2 | ^11.0 || | MIT | |
| v1.40.0 | ^8.2 | ^11.0 || | MIT | |
| v1.39.0 | ^8.2 | ^11.0 || | MIT | |
| v1.38.0 | ^8.2 | ^11.0 || | MIT | |
| v1.37.0 | ^8.2 | ^11.0 || | MIT | |
| v1.36.0 | ^8.2 | ^11.0 || | MIT | |
| v1.35.0 | ^8.2 | ^11.0 || | MIT |
Showing the latest 30 of 171. See every release on Packagist