Arrel documentation
Arrel is an admin framework for Laravel: you define a Resource once, in PHP, and you get a complete panel (form, table, filters, actions, relation managers and, optionally, a place on the dashboard). The frontend is a Vue SPA that Arrel ships precompiled; there is nothing to write in JavaScript for a regular Resource.
final class PostResource extends Resource
{
protected static string $model = Post::class;
public function fields(): array
{
return [
Section::make('Content')->schema([
Text::make('title')->rules('required', 'string', 'max:255'),
Toggle::make('is_published')->default(false),
]),
];
}
public function columns(): array
{
return [
Column::make('title')->sortable()->searchable(),
Column::make('is_published')->as('boolean')->sortable(),
];
}
}This class alone already gives you a full CRUD: a listing with sorting and search, a create/edit form with Laravel validation, and a /schema endpoint that the frontend renders dynamically. There is no second language to learn: the same methods you already know from Laravel (rules(), closures, Eloquent) are Arrel's API.
Where to start
- Installation: requirements,
composer require, publishing the assets. - Panel configuration: registering a
Panel, the URL prefix, your own branding, theme and texts. - Resources: the core of Arrel, how a Resource is defined and how authorization works.
What you will find
| The core | Resources, fields, tables and columns, filters, actions and Relation managers. |
| Beyond CRUD | Pages, custom pages with the component kit, widgets and multi-tenancy. |
| Access and security | Authentication (email verification, second factor, notifications) and security and authorization. |
| Keeping up to date | Behaviour changes and Releases. |
The examples in this documentation
The examples start from a simple PostResource, the same one the Arrel test suite uses (workbench/app/Resources/PostResource.php). When an example needs a case that this Resource does not have, it uses generic names (Comment, Room...).
Requirements
| PHP | ^8.5 |
| Laravel | ^13.0 |