cleaniquecoders / kickoff
Helps configure your new Laravel project with good practices.
Requires
- php: ^8.2
- illuminate/filesystem: ^10.20|^11.0|^12.0
- illuminate/support: ^10.20|^11.0|^12.0
- symfony/console: ^6.2|^7.0
- symfony/polyfill-mbstring: ^1.31
- symfony/process: ^6.2|^7.0
Requires (Dev)
- driftingly/rector-laravel: ^2.0
- larastan/larastan: ^3.6
- laravel/pint: ^1.24
- phpstan/phpstan: ^2.1
- phpunit/phpunit: ^10.4
README
π Kickoff
This package bootstraps a new Laravel project with all the essential tools, configs, and workflows you need for a modern and maintainable setup.
The setup is based on this repository - Project Template.
π₯ Usage
β οΈ This script is for new Laravel projects only. Do not run on an existing project unless you know what youβre doing.
Install this package at global:
composer global require cleaniquecoders/kickoff
Then run:
kickoff start <owner> <project-name> <project-path>
By default it will use current directory
<project-path>
is optional. It will use current directory path.<project-path>
can accept relative or absolute path to the project.
Example:
kickoff start nasrulhazim project-template π Let's kickoff your nasrulhazim/project-template now! β³ Copy application stubs... β β³ Update composer.json for helper, config plugins and scripts... β β³ Update project name in bin/ directory... β β³ Update README... β β³ Update .env.example... β β³ Update project environment file... β β³ Changing to project directory... β β³ Installing required packages... β β³ Publishing package configs & migrations... β β³ Install tippy.js... β β³ Building application... β π Project setup completed successfully!
β¨ Features
-
π¦ Installs required Laravel packages:
-
π Dev tools:
- barryvdh/laravel-debugbar
- larastan/larastan for static analysis
- driftingly/rector-laravel
- pestphp/pest-plugin-arch for architecture testing
-
βοΈ Configuration:
- Adds QA scripts to
composer.json
- Autoloads
support/helpers.php
- Creates
rector.php
,phpstan.neon.dist
, andpint.json
- Adds QA scripts to
-
π Project Structure:
support/
for helpers- Refactored
routes/
intoweb/
,api/
, andconsole/
subfolders (backups included) tinker/
with.gitignore
docs/README.md
with a placeholder TOC
-
π‘οΈ Automation Scripts:
- Creates executable scripts in
bin/
for tasks like backup, deployment, PHPStan reporting, dependency updates, and project install - All scripts use the current directory name as the project name
- Creates executable scripts in
-
β Testing:
- Generates
tests/Feature/ArchitectureTest.php
using Pest Arch
- Generates
-
π Documentation:
- Creates
CHANGELOG.md
,CONTRIBUTING.md
,CODE_OF_CONDUCT.md
,SECURITY.md
,SUPPORT.md
, andLICENSE.md
- Creates
-
β‘ GitHub Actions Workflows:
- Pint (Laravel Pint)
- PHPStan
- Rector
- Tests (Pest)
- Changelog updater
-
π§ Artisan & Project Tasks:
- Clears config and view caches
- Runs migrations
- Creates storage symlink
- Publishes package configs and migrations
-
π οΈ Infrastructure Templates:
- Sets up
.config/
with Nginx and Supervisor templates
- Sets up
π‘οΈ Automation Scripts
-
Creates executable scripts in
bin/
for common project tasks:- backup-app: Backup your application files
- backup-media: Backup only media files changed in the last 24 hours
- build-fe-assets: Build and commit frontend assets
- deploy: Deploy code to your server with branch/tag support
- update-dependencies: Update Composer and npm dependencies, audit and build assets
- reinstall-npm: Remove and reinstall npm modules and lock file
- install: Project initialization, database setup, and environment configuration
- phpstan: Run PHPStan and generate readable reports per identifier
-
All scripts use the current directory name as the project name for dynamic configuration.
-
Scripts are made executable and can be run directly from the
bin/
directory.
Security Vulnerabilities
If you discover a security vulnerability within AirBox, please send an e-mail to Nasrul Hazim via nasrulhazim.m@gmail.com. All security vulnerabilities will be promptly addressed.
Contributors
License
The Laravel framework is open-sourced software licensed under the MIT license.