Framework

Seed Next.js + Prisma + Postgres with MockHero

The Setup

A Next.js App Router app with Prisma pointed at Postgres. Drop this script into prisma/seed.ts and wire it up via package.json.

// prisma/seed.ts
import { PrismaClient } from "@prisma/client";

const prisma = new PrismaClient();

const res = await fetch("https://api.mockhero.dev/api/v1/generate", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "x-api-key": process.env.MOCKHERO_API_KEY!,
  },
  body: JSON.stringify({
    tables: [
      { name: "User", count: 50, fields: [
        { name: "id", type: "uuid" },
        { name: "email", type: "email" },
        { name: "name", type: "full_name" }
      ]},
      { name: "Post", count: 200, fields: [
        { name: "id", type: "uuid" },
        { name: "authorId", type: "ref", ref: "User.id" },
        { name: "title", type: "sentence" },
        { name: "published", type: "boolean" }
      ]}
    ]
  })
});

const data = await res.json();
await prisma.user.createMany({ data: data.User });
await prisma.post.createMany({ data: data.Post });
// package.json
{
  "prisma": { "seed": "tsx prisma/seed.ts" }
}

Run npx prisma db seed. Done.

Get Started

Get a free API key.

M

MockHero Team

Guides and tutorials for generating realistic test data with the MockHero API.

Start generating test data for free

1,000 rows/month on the free tier. No credit card required.

Get Your API Key

Related Articles