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.
β¨ 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.
π₯ 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 <project-name> <project-path>