joshcirre / fission
An opinionated starter kit for building Laravel applications.
Installs: 236
Dependents: 0
Suggesters: 0
Security: 0
Stars: 189
Watchers: 4
Forks: 25
Open Issues: 7
Type:project
pkg:composer/joshcirre/fission
Requires
- php: ^8.2
- laravel/framework: ^12.0
- laravel/prompts: ^0.3
- laravel/tinker: ^2.0
- livewire/flux: ^2.0
- livewire/flux-pro: ^2.0
- livewire/livewire: ^4.0@beta
- nunomaduro/essentials: ^1.0
Requires (Dev)
- fakerphp/faker: ^1.23
- larastan/larastan: ^3.4
- laravel/boost: ^1.0
- laravel/pail: ^1.2.2
- laravel/pint: ^1.18
- laravel/sail: ^1.41
- mockery/mockery: ^1.6
- nunomaduro/collision: ^8.0
- peckphp/peck: ^0.1.0
- pestphp/pest: ^4.0
- pestphp/pest-plugin-laravel: ^4.0
- rector/rector: ^2.0
- soloterm/solo: ^0.4.0
Suggests
- bentoproject/bento: Adds Bento to your project
- filament/filament: Adds Filament admin panel to your project
- pirsch-analytics/laravel: Adds Pirsch analytics to your project
- sentry/sentry-laravel: Adds Sentry error tracking to your project
- spatie/ray: Adds Spatie Ray for debugging
README
Important
This is an opinionated starter kit created by me (Josh Cirre) using Laravel Livewire and Livewire Flux. While PRs are welcome, this is designed to fit the needs of one person.
Tip
Clone the repository and run composer setup to get started quickly. See Installation below.
Why Does This Exist?
Up until Livewire Flux released, I used Breeze as a starting point for 99% of new projects that I would create. Typically, those new projects were built for demos on videos or starting points for tutorials. In addition, I would start side projects or app ideas with Breeze, as well.
Eventually I knew I wanted to create my own starting kit that worked well for what I needed in most scenarios. Authentication and a dashboard where I can start writing code.
Once Livewire Flux released, it was the perfect time to make this happen.
Flux License Required
A license for Flux (technically, "Flux Pro") is required to use Fission. Fission does not contain any of Flux's CSS, built CSS, or Blade components. However, if you do not have a license there are only two components used in the Flux Pro version (Toast and Card). Feel free to remove them from the starter kit.
Installation
Quick Start (Recommended)
git clone https://github.com/joshcirre/fission.git my-project
cd my-project
composer setup
Using Composer Create-Project
composer create-project joshcirre/fission my-project
cd my-project
composer setup
Note
The laravel new --using flag is not recommended due to archive extraction issues with special characters in filenames.
The composer setup command handles:
- Dependency installation
- Environment configuration (.env)
- Application key generation
- SQLite database creation
- Flux Pro credential setup
- Database migrations
- Project name configuration
- NPM dependency installation
- Asset building
Development
composer dev # Start server, queue, logs, and Vite
Code Quality
Fission enforces strict code quality through automated tooling:
composer fix # Fix everything: types, refactoring, formatting composer test # Run all checks: tests, linting, types, refactoring
| Command | Purpose |
|---|---|
composer fix |
PHPStan → Rector → Prettier → Pint |
composer test |
Typos → Pest → Lint check → PHPStan → Rector dry-run |
composer lint |
Pint + Prettier (quick format) |
composer refactor |
Rector only |
Individual Test Commands
composer test:unit # Pest tests (parallel) composer test:unit:coverage # Pest with coverage composer test:types # PHPStan analysis composer test:lint # Check formatting (no fix) composer test:refactor # Rector dry-run composer test:typos # Peck typo checker
Tooling Stack
- Pest - Testing framework
- PHPStan + Larastan - Static analysis (max level)
- Rector - Automated refactoring
- Pint - PHP code style (strict Laravel)
- Prettier - JS/CSS formatting
- Peck - Typo detection
License
The Fission starter kit is open-sourced software licensed under the MIT license.