Database
Seeding
Introduction
Seeders populate your database with initial or test data (roles, admin users, fixtures, demo content).
Seeders live in database/seeders and are executed through artisanNode.
Generate a seeder
Bash
This creates a new seeder class in database/seeders.
Write seeder data
Typical seeder pattern:
TypeScript
Use framework helpers for sensitive values when needed:
TypeScript
Run seeders
Run default seeding flow (this executes DatabaseSeeder in database/seeders):
Bash
Run a specific seeder class:
Bash
Common workflows
Fresh database + seed
Bash
Queue table + seed app data
Bash
Best practices
- Make seeders idempotent where possible (safe to rerun).
- Keep production seeders minimal (required baseline data only).
- Separate large demo/test fixtures from critical app bootstrap data.
Summary
- Create seeders with
make:seeder. - Execute with
db:seed. - Combine with migrations for repeatable environment setup.