What problem does it solve? Backend modules often need baseline rows—lookup tables, fixed roles, or demo fixtures—before they are usable. This Skill guides you through seeding that data in a .NET EF Core codebase using the right mechanism for the data type, avoiding common pitfalls like non-idempotent seeders or migrations that never run in tests. ## Core Features & Use Cases - HasData() Migrations: Bake static reference data (lookups, enums-as-tables, fixed roles) directly into an EF Core migration via IEntityTypeConfiguration, so it is inserted once per environment. - Runtime Seeders: Create idempotent startup seeders that run through IUnitOfWork after Migrate(), ideal for demo data, dev fixtures, or values HasData cannot express (computed IDs, DateTime.UtcNow). - Use Case: After scaffolding a new backend module, you need a Species lookup table with fixed rows and a demo admin user. Use Mode A for the Species rows baked into a migration, and Mode B for the admin user seeded idempotently at startup in development. ## Quick Start Ask the AI to seed baseline data for your new module, specifying whether the rows are static reference data or demo fixtures so it picks HasData or a runtime seeder.