mcpField
L
laravel-migrations-and-factories

laravel-migrations-and-factories

github.com/noartemData & databases1374 installsUpdated 2w ago
Repository

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

  1. 01Pair models with migrations and factories
  2. 02Keep merged migrations unchanged
  3. 03Build realistic data with factory states
  4. 04Use factories and transactions in tests

Use cases

  1. 01Add a model with its migration and factory
  2. 02Prepare realistic data for tests
  3. 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-factories

After installing, type/laravel-migrations-and-factoriesin Claude Code to confirm it loaded.

Details

From the project README

Migrations 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