A web interface to generate migrations, models and CRUDs. Forget about the command line. Forget about migration types. Go from idea to full CRUD in seconds.
What's your current process, when creating an entity in your project? We bet you need:
migration
;model
;factory
and a seeder
;CrudController
, CrudRequest
, route
and sidebar item
;Haven't you gotten tired of doing that, for each new entity? We have. Not only is it boring and repetitive... it takes quite a bit of time to get just right. We've all tried to speed this up using existing tools. Hell, we've even contributed or taken over their maintenance:
laracasts/generators
for migrations
and models
, but it's difficult to generate a final migration in one command line; we always forget stuff... and it doesn't generate relationships;laravel-shift/blueprint
for migrations
and models
with relationships, but then you have to learn&remember the Blueprint YAML syntax; we forget it, so we get into a back-and-forth between the Blueprint docs, the Laravel migration docs, the YAML file and the generated files;backpack/generators
, but... it doesn't fill in the CrudRequest
or the fields
& columns
... it's a technical limitation... so we have to punch in every column/field we want afterwards;We're super-grateful to the creators of those tools. We've been using them for years and contributed to their projects as much as possible. But... we've always felt we can do better. So we did.
We're web developers, so we've created a web interface (😱 ), which uses those exact tools behind the scenes, connects them and polishes the generated files, automatically. We thought it would take us a few days, maybe weeks, but after quite a few months of working at this, we can finally say we've got something better. Something much much better.
Thanks to this package, creating new entities is no longer boring, or tedious. It's actually... fun 😀 We think you'll absolutely love this new way of starting your Laravel projects... In fact, we think you won't be able to go back to writing them by hand. We know we can't 😀
Thanks to Backpack\Devtools, you can just fill in one form:
And you can get:
migration
;model
with fillable
and relationships already written;seeder
and factory
with the columns defined;CrudController
with the fields & columns already defined;CrudRequest
with the validation rules already inferred from the database restrictions;route
and sidebar item
for the admin panel;That's a full working CRUD, you can go ahead and add items from the admin interface.
No, really. Here's what the form above generated:
No more dumpster-diving into the database/migrations
directory. Easily see your migrations, which ones are run, run them, roll them back and even open them in your editor to slighly polish them.
See the state of your Models, which ones have CRUDs, which ones have factories and seeders and insert dummy data right then&there.
[UNDER DEVELOPMENT] Soon enough, this package will also help you:
columns
, fields
, filters
, buttons
, widgets
;Operations
;You can forget about using the command line for those things. You can forget about looking inside the vendor/backpack/crud
folder to see what you want to overwrite or get inspiration from. You think it, you click it, you have it.
Backpack DevTools assumes that you already have:
pdo_sqlite
extension enabled)backpack/crud
v4.1+ properly installedIn your Laravel + Backpack project, run:
php artisan backpack:require:devtools
It will ask you for your token & password - which you get after you purchase this package. If you've purchased previously, you can see your token and password in your Backpack account.
Alternatively, if the quick installation above doesn't work, here are the steps you can take:
Step 1. Buy access to this package and you'll get an access token. With that token in hand, you should instruct your project to pull in DevTools from our private repository, instead of Packagist:
auth.json
file by running composer config http-basic.backpackforlaravel.com [your-token-username] [your-token-password]
composer.json
: "repositories": [
{
"type": "composer",
"url": "https://repo.backpackforlaravel.com/"
}
],
Step 2. Install the package using Composer:
# Recommended - get latest DevTools version and update dependencies (backpack, livewire, sushi, blueprint)
composer require --dev --with-all-dependencies backpack/devtools
# Alternatively - get the version of DevTools you can install without updating anything
composer require --dev backpack/devtools
Common errors:
composer update
, to get the latest version;Error 500 Class X does not seem to be auto-loaded
- run the recommended method above or composer update
, to get the latest version;Step 3. Run the installation command and follow the instructions:
php artisan backpack:devtools:install
That's it. You can now visit your-app-name/admin/devtools
to use DevTools. The rest is point&click.
SUPER-IMPORTANT!!! You must make sure your
staging
andproduction
environments DO NOT include the DevTools interface and functionality:
- if you auto-deploy your project using
composer
&git
(using Laravel Forge, Envoyer or anything else), make sure that you're runningcomposer install --no-dev
;- if you deploy your project by uploading a ZIP file or FTP the files, make sure you upload builds after you've run
composer install --no-dev
;- alternatively, after you're done generating stuff using DevTools, just do
composer remove --dev backpack/devtools
, that'll get rid of it; or include that command in your build pipeline;
To submit issues, bugs and feature requests, please see our laravel-backpack/devtools-issues repo on Github.
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
This software is proprietary & closed-source, released under the End-User License Agreement (EULA) for Private Backpack Addons. A copy of that license is also provided inside the source code - you can read that file by using the tabs at the beginning of this page.
You don't currently have access to this package. To gain access, go ahead and purchase it. You'll get: