Skip to content

Seeding your database ​

You can seed your database with initial data though the CLI.

Seeding the database is useful to:

  • Reload the data frequently the database in development or test.
  • Set initial data in production.

INFO

Migrations can be used to add or modify data to an existing database (data migration phase).

Configuring the seeder function ​

Each database can be configured with a seeder function.

ts
import { defineDatabase } from "@monolayer/pg/schema";
import { dbSchema } from "./schema";
import { dbSchema } from "./seeds";

export default defineDatabase({
  id: "default",
  schemas: [dbSchema],
  extensions: [],
  camelCase: false,
  seeder: dbSeed, 
});

Loading seed data ​

To load the seed data into the database execute the db seed command:

bash
npx monolayer db seed

This command will call the seeder function defined in your database definition.