L
laravel-migrations-and-factories
About laravel-migrations-and-factories
A Laravel skill for managing schema changes, factories, and database test setup. It gives guidance on reversible migrations, realistic test data, and safe handling of merged migrations.
Key features
- 01Pair models with migrations and factories
- 02Keep merged migrations unchanged
- 03Build realistic data with factory states
- 04Use factories and transactions in tests
Use cases
- 01Add a model with its migration and factory
- 02Prepare realistic data for tests
- 03Test database changes with rollback safety
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ noartem/ skills --skill laravel-migrations-and-factoriesAfter installing, type/laravel-migrations-and-factoriesin Claude Code to confirm it loaded.
Details
From the project READMEMigrations and Factories
Keep schema changes safe, testable, and reversible.
Commands
php artisan make:model Post -mfc
# Run/rollback
php artisan migrate
php artisan migrate:rollback --step=1
# Fresh DB (dangerous; dev only)
php artisan migrate:fresh --seed
Rules
- Pair each new model with a migration and a factory
- If a migration was merged to
main, never edit it—add a new one - On feature branches, you may amend migrations created on that branch (if not merged)
- Seed realistic but minimal datasets in seeder classes; keep huge datasets external
Factories
- Prefer state modifiers (e.g.,
->state([...])) over boolean flags - Use relationships (e.g.,
belongsTo) in factories to build realistic graphs - Keep factories fast; move expensive setup to seeds where possible
Testing
- Use factories in tests; avoid manual inserts
- For integration tests touching DB, use transactions or
RefreshDatabase
Comments
Markdown supported