laravel:migrations-and-factories

SkillDatabases & data

Safe database change patterns; when to modify vs add migrations; always pair models with migrations and factories; seeding guidance

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the laravel:migrations-and-factories skill

What this skill tells your AI

The instructions your AI receives, as published by jpcaparas/superpowers-laravel in skills/migrations-and-factories/SKILL.md and read by ahel’s review.

Keep schema changes safe, testable, and reversible.

Commands

# Create model with migration + factory
sail artisan make:model Post -mfc   # or: php artisan make:model Post -mfc

# Run/rollback
sail artisan migrate                # or: php artisan migrate
sail artisan migrate:rollback --step=1   # or: php artisan migrate:rollback --step=1

# Fresh DB (dangerous; dev only)
sail artisan migrate:fresh --seed   # or: 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
  • Laravel 13+: guard conditional schema changes with Schema::hasForeignKey('posts', 'posts_user_id_foreign'); use $table->vector('embedding', dimensions: 1536) for pgvector columns (see laravel:vector-search)

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

Signals

GitHub stars
153
Forks
2
Last commit
Jul 2026
Advanced
Catalog kind
skill
Gateway key
laravel-migrations-and-factories
Source
github.com/jpcaparas/superpowers-laravel