facedigital / crudify
Perfect assistant to speed up project development with Laravel
Requires
- doctrine/dbal: ^3.6|^4.0
- illuminate/console: ^9.27|^10.0|^11.0
- illuminate/support: ^9.0|^10.0|^11.0
Requires (Dev)
- orchestra/testbench: ^7.0|^8.0|^9.0
- phpunit/phpunit: ^9.5|^10.0|^11.0
This package is not auto-updated.
Last update: 2025-04-25 03:40:22 UTC
README
FACE Digital - Crudify
Package implements a CRUD generator based on schema or table existing in the database. Ideal for laravel projects with legacy database.
Explore the docs »
Report Bug
·
Request Feature
Table of Contents
About The Project
This Package is developed by FACE Digital and implements a CRUD generator for Laravel Framework designed to simplify CRUD operations by automatically generating code based on existing schemas or tables in a database. It is particularly well-suited for Laravel projects that rely on legacy databases. With this package, developers can quickly create, read, update, and delete data without the need for manual coding.
Note: As an early version this tool still has a lot of limitations but it can be improved with community contributions.
Installation
Installing from composer. (More Easy)
composer require facedigital/crudify
Installing from Git repository
Add these lines to the project's composer.json
.
"require": { "facedigital/crudify": "*" }
Add this from repositories section.
"repositories": [ { "type": "vcs", "url": "git@github.com:facedigital/crudify.git" } ]
If the version is not informed, the master branch will be installed.
Run composer install
or composer update
command.
After installation run the command:
php artisan vendor:publish --tag=crudify
Usage
Crudify All Command
Creates all files based on the name
and --schema
that are passed as a parameter.
php artisan crudify:all post --schema "title:string, subtitle:string:nullable, content:text"
Creates all files based on an existing table in the database.
php artisan crudify:all post
Created Files:
- Model
- Controller
- StoreRequest
- UpdateRequest
- Factory
- View Index
- View Show
- View Create
- View Edit
Crudify Migration Command
Creates a migration based on the name
and --schema
that are passed as a parameter.
php artisan crudify:migration post --schema "title:string, subtitle:string:nullable, content:text"
Creates a migration based on an existing table in the database.
php artisan crudify:migration post
Created Files:
- Migration
Crudify Factory Command
Creates a factory based on the name
and --schema
that are passed as a parameter.
php artisan crudify:factory post --schema 'title:string, subtitle:string:nullable, content:text'
Creates a factory based on an existing table in the database.
php artisan crudify:factory post
Created Files:
- factory
Crudify Model Commnad
Creates a model based on the name
and --schema
that are passed as a parameter.
php artisan crudify:model post --schema 'title:string, subtitle:string:nullable, content:text'
Creates a model based on an existing table in the database.
php artisan crudify:model post
Created Files:
- Model
Crudify Controller Command
Creates a controller based on the name
and --schema
that are passed as a parameter.
php artisan crudify:controller post --schema 'title:string, subtitle:string:nullable, content:text'
Creates a controller based on an existing table in the database.
php artisan crudify:controller post
Created Files:
- Controller
Crudify Views Command [index|show|create|edit]
Creates a view based on the name
and --schema
that are passed as a parameter.
php artisan crudify:index post --schema 'title:string, subtitle:string:nullable, content:text'
Creates a view based on an existing table in the database.
php artisan crudify:index post
Created Files:
- View Index
- View Show
- View Create
- View Edit
Change Theme
In the config file located at config/crudify.php
has the theme
definition.
'theme' => 'bootstrap' // [bootstrap|tailwind]
Customize Stubs
'stubs' => [ 'views' => [ 'index' => null, // [null = default|project] 'create' => 'stubs/crudify/views/create.blade.php.stub', 'edit' => null, 'show' => null, ] ],
Roadmap
- Add Changelog
- Add README and basic documentation
- Add MIT License
- Add Theme definition in config
- Add Basic Class Components
- CLI Commands
- Generate All Command
- Generate Migration Command
- Generate Model Command
- Generate Controller Command
- Generate StoreRequest Command
- Generate UpdateRequest Command
- Generate View Index Command
- Generate View Edit Command
- Generate View Show Command
See the open issues for a full list of proposed features (and known issues).
Contributing
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
License
Distributed under the MIT License. See LICENSE
for more information.
Contact
FACE Digital - facedigital.com.br - dev@facedigital.com.br
Project Link: https://github.com/facedigital/crudify