An intelligent code generator for Laravel framework that will save you time! This awesome tool will help you generate resources like views, controllers, routes, migrations, languages and/or form-requests! It is extremely flexible and customizable to cover many use cases. It is shipped with a cross-browser compatible template, along with client-side validation to modernize your application.
<<<<<<< HEAD For full documentation and live demo, please visit CrestApps.com
For full documentation and live demo please visit CrestApps.com
v2.3
- One step installation when using Laravel 5.5+
- Create very clean, reusable and highly readable code to build on.
- Create full resources using a single command with migration or from existing database.
- Creates full resources for all of the existing tables in the database using one command. <<<<<<< HEAD
- Allows you to save the fields in a JSON file and recreate resources when the business needs change. =======
- Create full API-based resources using a single command with migration or from existing database.
- Create beautiful documentation for your API.
- Create api-resource and api-resource-collection with Laravel 5.5+.
- Allows you to save the fields in a JSON file and recreate resources when the business needs changes. >>>>>>> v2.3
- Utilizes JSON based resource-file to allow you to define your resources. Resource-file allows you to easily regenerate the resource at any time even when the business rules change.
- Create standard CRUD controllers with simple or form-request validation.
- Customizable view’s templates to enable you to change the standard look and feel of your application.
- Create model with relations.
- Create named routes with and without group.
- Create standard CRUD views.
- Smart migration engine! Keeps track of all generated migrations to only create the needed migration.
- Intelligent enough to automatically handle the relations between the models.
- Very flexible and rich with configurable options.
- Easy commands to create resource-file; additionally, add or reduce existing resource-file.
- Full capability to generate multi-language applications.
- Client-side validation.
- File uploading handling.
- Auto store multiple-response in the database.
- Create form-request to clean up your controller and increase your code reusability.
- Create view's layouts with and without client-side validation.
- Change the template at run time to generate different views.
- Ability to generate views with and without Laravel-Collective.
- Nicely handles any date, time or datetime field.
- Auto handles any boolean field.
- Very easy to use with lots of documentation.
-
To download this package into your laravel project, use the command-line to execute the following command:
composer require crestapps/laravel-code-generator --dev
-
(You may skip this step when using Laravel >= 5.5) To bootstrap the packages into your project while using command-line only, open the app/Providers/AppServiceProvider.php file in your project. Then, add the following code to the register() method.
Add the following line to bootstrap laravel-code-generator to the framework.
if ($this->app->runningInConsole()) { $this->app->register('CrestApps\CodeGenerator\CodeGeneratorServiceProvider'); }
<<<<<<< HEAD 3. Execute the following command from the command-line to publish the package's config and the default template to start generating awesome code.
```
php artisan vendor:publish --provider="CrestApps\CodeGenerator\CodeGeneratorServiceProvider" --tag=default
```
A layout is required for the default views! The code generator allows you to create a layout using the command-line. Of course, you can use also your own layout. You'll only need to include CSS bootstrap framework in your layout for the default templates to work properly. Additionally, you can chose to design your own templetes using a different framework or css. ======= A layout is required for the default views! The code generator allows you to create a layout using the command-line. Of cource you can use your own layout. You'll only need to include CSS bootstrap framework in your layout for the default templates to work properly. Additionally, you can chose to you design your own templetes using a different or no css framework.
v2.3
Checkout our channel on YouTube.com
The command in between the square brackets [] must be replaced with a variable of your choice.
-
Main commands
- php artisan create:scaffold [model-name]
- php artisan create:controller [model-name]
- php artisan create:model [model-name]
- php artisan create:form-request [model-name]
- php artisan create:routes [model-name]
- php artisan create:migration [model-name]
- php artisan create:language [model-name]
- php artisan create:mapped-resources
-
API commands
- php artisan create:api-scaffold [model-name]
- php artisan create:api-controller [model-name]
- php artisan create:api-resources [model-name]
- php artisan api-doc:create-controller [model-name]
- php artisan api-doc:create-view [model-name]
-
Views commands
- php artisan create:layout [application-name]
- php artisan create:views [model-name]
- php artisan create:index-view [model-name]
- php artisan create:create-view [model-name]
- php artisan create:edit-view [model-name]
- php artisan create:show-view [model-name]
- php artisan create:form-view [model-name]
-
Resource's files commands
- php artisan resource-file:from-database [model-name]
- php artisan resource-file:create [model-name]
- php artisan resource-file:append [model-name]
- php artisan resource-file:reduce [model-name]
- php artisan resource-file:delete [model-name]
-
Migration commands
- php artisan migrate-all
- php artisan migrate:rollback-all
- php artisan migrate:reset-all
- php artisan migrate:refresh-all
- php artisan migrate:status-all
Full documentation available at CrestApps.com.
Live demo is available at CrestApps.com.
Do you like this project and want to contribute?
- HELP WANTED Version
v2.3
needs to be documented before it can be released. If you are able to contribute, please read the change-log in v2.3 branch and document it in the CrestApps-site repository. For any help, my email can be found in thecomposer.json
file, feel free to send me an email. - Please start by Staring this package on GitHub.
- Sharing this projects with others is your way of saying keep improvements and new awesome feature coming.
- Report any bugs or send us any comments, idea, thought that you may have about this project as an issue on GitHub.
I'd love to know if your site was generated using this package and list your logo on the documentation site. Please email using my contact info found in composer.json
file.
Do you like this project and want to contribute?
- HELP WANTED Version
v2.3
needs to be documented before it can be released. If you are able to contribute, please read the change-log in v2.3 branch and document it in the CrestApps-site repository. For any help, my email can be found in thecomposer.json
file, feel free to send me an email. - Please start by Staring this package on GitHub.
- Sharing this projects with others is your way of saying keep the improvements and new awesome features coming.
- Report any bugs or send us any comments, idea, thought that you may have about this project as an issue on GitHub.
I'd love to know if your site was generated using this package and list your logo on the documentation site. Please email me by using my contact info found in composer.json
file.
The following example assumes that we are trying to create a CRUD called AssetCategory with the fields listed below.
- id
- name
- description
- is_active
<<<<<<< HEAD
php artisan resource-file:create AssetCategory --fields=id,name,description,is_active
The above command will create a resource-file named
asset_categories
, and will save it here /resources/laravel-code-generator/sources/asset_categories.json=======
php artisan create:resources AssetCategory --with-migration
The above command will create resource-file names /resources/laravel-code-generator/sources/asset_categories.json
>>>>>>> v2.3
php artisan create:scaffold AssetCategory --with-migration
The above command will create a model app/Models/AssetCategory, a controller app/Http/Controllers/AssetCategoriesController, all views, the routes, and migration class!
php artisan create:scaffold AssetCategory --with-migration --fields=id,name,description,is_active
The above command will create resource-file names /resources/laravel-code-generator/sources/asset_categories.json first. Then, it will create a model app/Models/AssetCategory, a controller app/Http/Controllers/AssetCategoriesController, all views, the routes, and migration class!. This is a short way to issuing both `resource-file:create` and `create:scaffold` in one line
php artisan resource-file:create AssetCategory --fields=id,name,description,is_active
The above command will create resource-file names /resources/laravel-code-generator/sources/asset_categories.json
php artisan create:scaffold AssetCategory --with-migration
The above command will create a model app/Models/AssetCategory, a controller app/Http/Controllers/AssetCategoriesController, all views, the routes, and migration class!
<<<<<<< HEAD
php artisan resource-file:create AssetCategory --fields=id,name,description,is_active --translation-for=en,ar
The above command will create resource-file named /resources/laravel-code-generator/sources/asset_categories.json
=======
php artisan create:resources AssetCategory --with-migration
The above command will create resource-file names /resources/laravel-code-generator/sources/asset_categories.json
>>>>>>> v2.3
php artisan create:scaffold AssetCategory --with-migration
The above command will create a model app/Models/AssetCategory, a controller app/Http/Controllers/AssetCategoriesController, all views, the routes, and migration class!
<<<<<<< HEAD
php artisan resource-file:create AssetCategory --fields=id,name,description,is_active
The above command will create resource-file named /resources/laravel-code-generator/sources/asset_categories.json
=======
php artisan create:resources AssetCategory --with-form-request
The above command will create resource-file names /resources/laravel-code-generator/sources/asset_categories.json
>>>>>>> v2.3
php artisan create:scaffold AssetCategory --with-form-request
The above command will create a model app/Models/AssetCategory, a controller app/Http/Controllers/AssetCategoriesController, all views, the routes, and app/Http/Requests/AssetCategoriesFormRequest class!
<<<<<<< HEAD
php artisan resource-file:create AssetCategory --fields=id,name,description,is_active
The above command will create resource-file named /resources/laravel-code-generator/sources/asset_categories.json
=======
php artisan create:resources AssetCategory --with-soft-delete --with-migration
The above command will create resource-file names /resources/laravel-code-generator/sources/asset_categories.json
>>>>>>> v2.3
php artisan create:scaffold AssetCategory --with-soft-delete --with-migration
The above command will create a model app/Models/AssetCategory, a controller app/Http/Controllers/AssetCategoriesController, all views, the routes, and migration file!
<<<<<<< HEAD
php artisan create:resources AssetCategory --table-exists
The above command will create resource-file named /resources/laravel-code-generator/sources/asset_categories.json. It is going to assume that the table name is called "asset_categories" in your database. Note, it assumes your table is plural. If that is not the case, you can use --table-name=some_other_table_name
Then it will create a model app/Models/AssetCategory, a controller app/Http/Controllers/AssetCategoriesController, all views and routes!
=======
php artisan create:scaffold AssetCategory --table-exists
The above command will create resource-file names /resources/laravel-code-generator/sources/asset_categories.json. It is going to assume that the table name is called "asset_categories" in your database. If that is not the case, you can use --table-name=some_other_table_name
Then it will create a model app/Models/AssetCategory, a controller app/Http/Controllers/AssetCategoriesController, all views and the routes!
>>>>>>> v2.3You may also create a resource-file from existing database separately using
php artisan resource-file:from-database AssetCategory
<<<<<<< HEAD
php artisan create:resources AssetCategory --translation-for=en,ar --table-exists
The above command will create resource-file named /resources/laravel-code-generator/sources/asset_categories.json
=======
php artisan create:scaffold AssetCategory --translation-for=en,ar --table-exists
The above command will create resource-file names /resources/laravel-code-generator/sources/asset_categories.json
>>>>>>> v2.3Then it will create a model app/Models/AssetCategory, a controller app/Http/Controllers/AssetCategoriesController, all views and the routes!
You may also create a resource-file from existing database separately using
php artisan resource-file:from-database AssetCategory --translation-for=en,ar
Creating resources from existing database with translation for English and Arabic in two step for better control over the fields!
<<<<<<< HEAD
php artisan resource-file:from-database AssetCategory --translation-for=en,ar
php artisan create:resources AssetCategory
The above command will create resource-file named /resources/laravel-code-generator/sources/asset_categories.json
Then it will create a model app/Models/AssetCategory, a controller app/Http/Controllers/AssetCategoriesController, all views and routes!
=======
php artisan create:scaffold AssetCategory
The above command will create resource-file names /resources/laravel-code-generator/sources/asset_categories.json
Then it will create a model app/Models/AssetCategory, a controller app/Http/Controllers/AssetCategoriesController, all views and the routes!
>>>>>>> v2.3
"Laravel Code Generator" is an open-sourced software licensed under the MIT license