adereksisusanto / laravel-artisan
Laravel scaffolding toolkit – generate boilerplate code and build artisan-powered CLI tools.
Package info
github.com/adereksisusanto/laravel-artisan
pkg:composer/adereksisusanto/laravel-artisan
Fund package maintenance!
Requires
- php: ^8.3|^8.5
- illuminate/console: ^11.0|^12.0|^13.0
- illuminate/container: ^11.0|^12.0|^13.0
- illuminate/contracts: ^11.0|^12.0|^13.0
- illuminate/filesystem: ^11.0|^12.0|^13.0
- illuminate/support: ^11.0|^12.0|^13.0
- symfony/console: ^6.0|^7.0|^8.0
- symfony/finder: ^6.0|^7.0|^8.0
Requires (Dev)
- laravel/pint: ^1.0
- orchestra/testbench: ^9.0|^10.0|^11.0
- pestphp/pest: ^3.0
- pestphp/pest-plugin-arch: ^3.0
- phpstan/phpstan: ^2.0
- phpstan/phpstan-phpunit: ^2.0
- phpunit/phpunit: ^10.5|^11.0
README
Artisan commands to scaffold boilerplate code — designed for Laravel package developers.
Artisan commands to scaffold boilerplate code — designed for Laravel package developers.
Note: This package runs standalone — it does not integrate with a Laravel application. Perfect for package development where you need artisan scaffolding without booting a full Laravel app.
Languages: Indonesia | English
Installation
composer require adereksisusanto/laravel-artisan --dev
After installation, the bin/artisan entry point is available in your project's vendor/bin directory.
Quick Start
Create artisan in your project root (or use vendor/bin/artisan directly):
#!/usr/bin/env php <?php require __DIR__ . '/vendor/autoload.php'; use Adereksisusanto\Laravel\Artisan\Application; use Adereksisusanto\Laravel\Artisan\Kernel; $app = Application::create(__DIR__); $kernel = new Kernel($app); $status = $kernel->handle(); $kernel->terminate($status);
Then run:
php artisan list
Namespace and source path are automatically read from your project's composer.json PSR-4 autoload — no additional configuration needed.
Available Commands
| Command | Description |
|---|---|
make:action <name> |
Generate an action class |
make:cast <name> |
Generate a custom Eloquent cast class |
make:channel <name> |
Generate a broadcast channel class |
make:command <name> |
Generate a new artisan command |
make:component <name> |
Generate a view component class |
make:dto <name> |
Generate a DTO class |
make:enum <name> |
Generate an enum class |
make:event <name> |
Generate an event class |
make:exception <name> |
Generate an exception class |
make:facade <name> |
Generate a facade class |
make:interface <name> |
Generate an interface |
make:factory <name> |
Generate a model factory class |
make:job <name> |
Generate a queued job class |
make:listener <name> |
Generate an event listener class |
make:mail <name> |
Generate a mailable class |
make:middleware <name> |
Generate a middleware class |
make:migration <name> |
Generate a migration file |
make:model <name> |
Generate an Eloquent model class |
make:notification <name> |
Generate a notification class |
make:observer <name> |
Generate an observer class |
make:pipeline <name> |
Generate a pipeline class |
make:policy <name> |
Generate a policy class |
make:provider <name> |
Generate a service provider class |
make:repository <name> |
Generate a repository class |
make:request <name> |
Generate a form request class |
make:resource <name> |
Generate an API resource class |
make:rule <name> |
Generate a validation rule class |
make:scope <name> |
Generate a query scope class |
make:seeder <name> |
Generate a seeder class |
make:service <name> |
Generate a service class |
make:trait <name> |
Generate a trait |
make:view <name> |
Generate a Blade view file |
app:build <name> |
Build a PHAR archive |
app:inspect |
Inspect application details |
Registering Custom Commands
use Adereksisusanto\Laravel\Artisan\Kernel; $kernel = new Kernel($app); $kernel->registerCommand(\App\Commands\MyCommand::class); $kernel->handle();
Build PHAR
php artisan app:build myapp ./myapp list
Contributing
-
Fork & clone
git clone https://github.com/<your-username>/laravel-artisan.git cd laravel-artisan
-
Install dependencies
composer install
-
Create a branch
git checkout -b feat/your-feature-name
-
Make changes & run quality checks
composer check
This runs Pint (style), PHPStan (static analysis), and Pest (tests).
-
Run tests for all supported Laravel versions (optional, requires Docker)
# Test against Laravel 11 composer require laravel/framework:^11.0 orchestra/testbench:^9.0 --no-update --dev && composer update --prefer-stable && composer test # Test against Laravel 12 composer require laravel/framework:^12.0 orchestra/testbench:^10.0 --no-update --dev && composer update --prefer-stable && composer test # Test against Laravel 13 composer require laravel/framework:^13.0 orchestra/testbench:^11.0 --no-update --dev && composer update --prefer-stable && composer test
-
Commit & push
git add . git commit -m "feat: add your feature" git push origin feat/your-feature-name
-
Open a pull request on GitHub
Contributors
Thanks goes to these wonderful people:
Ade Reksi Susanto |
Contributions are welcome! Please open an issue or pull request.