Backpack\CRUD
Quickly build an admin interface for your Eloquent models, using Laravel 5. Erect a complete CMS at 10 minutes/model, max.
Features:
- 33+ field types
- 1-n relationships
- n-n relationships
- Table view with search, pagination, click column to sort by it
- Reordering (nested sortable)
- Back-end validation using Requests
- Translatable models (multi-language) // TODO
- Easily extend fields (customising a field type or adding a new one is as easy as creating a new view with a particular name)
- Easily overwrite functionality (customising how the create/update/delete/reorder process works is as easy as creating a new function with the proper name in your EntityCrudCrontroller)
Subscribe to the Mailchimp list to be announced of any major features or breaking changes (once every 1-3 months).
Install
- In your terminal:
$ composer require backpack/crud
- Add this to your config/app.php, under "providers":
Backpack\CRUD\CrudServiceProvider::class,
'Collective\Html\HtmlServiceProvider',
'Barryvdh\Elfinder\ElfinderServiceProvider',
- Add this to your config/app.php, under "aliases":
'CRUD' => 'Backpack\CRUD\CrudServiceProvider',
'Form' => 'Collective\Html\FormFacade',
'Html' => 'Collective\Html\HtmlFacade',
- Run:
$ php artisan elfinder:publish #published elfinder assets
$ php artisan vendor:publish --provider="Backpack\CRUD\CrudServiceProvider" --tag="public" #publish CRUD assets
$ php artisan vendor:publish --provider="Backpack\CRUD\CrudServiceProvider" --tag="lang" #publish the lang files
$ php artisan vendor:publish --provider="Backpack\CRUD\CrudServiceProvider" --tag="elfinder" #publish overwritten elFinder assets
- Define an 'uploads' disk. In your config/filesystems.php add this disk:
'uploads' => [
'driver' => 'local',
'root' => public_path('uploads'),
],
- [Optional] You can now the file manager to the menu, in resources/views/vendor/backpack/base/inc/sidebar.blade.php or menu.blade.php:
<li><a href="{{ url('admin/elfinder') }}"><i class="fa fa-files-o"></i> <span>File manager</span></a></li>
Usage
Check out the documentation at https://laravelbackpack.com
In short:
-
Make your model use the CrudTrait.
-
Create a controller that extends CrudController.
-
Create a new resource route.
-
(optional) Define your validation rules in a Request files.
Screenshots
Change log
Please see CHANGELOG for more information what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security
If you discover any security related issues, please email hello@tabacitu.ro instead of using the issue tracker.
Credits
- Cristian Tabacitu - chief honcho
- Cristian Tone - refactoring & architecture
- Marius Constantin - bug fixing & improvements
- All Contributors
Special thanks go to:
- John Skoumbourdis - Grocery CRUD for CodeIgniter was the obvious inspiration for this package.
- Jaroen Noten - creator of AdminLTE
License
The MIT License (MIT). Please see License File for more information.