Claude Skill MartBrowse skillsQuick linesLearn by videoTerminal guideWhat is a Skill?
← Back to list

Database Seed Generator

Reads your project schema and generates realistic, idempotent seed scripts that respect foreign-key ordering and D1 limits.

Dev & CodingIntermediate★ 1,034⑂ 105AI score 9/10Last updated: Sep 29, 2026

What it does

  • Scans the project for schema definitions (src/db/schema.ts, drizzle/*.sql, schema.sql, prisma/schema.prisma) and reads them.
  • Maps tables, columns, constraints (NOT NULL, UNIQUE, DEFAULT) and foreign keys, then builds a parent-before-child insert order — including a two-pass NULL-then-UPDATE strategy for circular dependencies.
  • Asks for purpose (dev/demo/testing), row volume and domain context, then generates domain-appropriate data: real-sounding names, @example.com emails, ISO 8601 dates, realistic prices — never "test123" or Lorem ipsum.
  • Emits a Drizzle TypeScript seed (scripts/seed.ts) or raw D1 SQL (seed.sql), with the run command documented at the top.
  • Makes seeds re-runnable: delete-then-insert for dev/testing, onConflictDoUpdate upserts for demo data.
  • Works around Cloudflare D1 gotchas: ~10 rows per INSERT, 100 bound-parameter cap, no BOOLEAN/DATETIME types, JSON stored as TEXT.

Who it's for

  • Developers on the Cloudflare Workers + D1 + Drizzle stack
  • Backend/fullstack engineers tired of hand-filling dev databases
  • Anyone who needs polished demo data for screenshots and product demos
  • Teams wanting systematic test fixtures with edge cases (empty strings, unicode, max lengths)

Examples

  1. Blog schema — say "seed database" and get a scripts/seed.ts inserting users → categories → posts → comments → tags → post_tags in dependency order.
  2. E-commerce demo data — ask for "100 rows of demo data for a store" and receive products with believable names and price ranges using upserts so user-created rows survive.
  3. Raw D1 SQL — get a batched-by-10 seed.sql you run with npx wrangler d1 execute DB --local --file=./scripts/seed.sql.
  4. Reproducible fixtures — uses a seeded PRNG (seed 42) so every run produces byte-identical test data.

· · · Install guide · · ·

Try it now, no install

Paste this into Claude to use the skill without installing anything.

Read the instructions in this file and follow them to help me:
https://raw.githubusercontent.com/jezweb/claude-skills/HEAD/archive/plugins/cloudflare/skills/db-seed/SKILL.md

What I want: (describe your task here)

If Claude can't open the link, open it yourself and paste the contents instead.

↓ If it works for you, download the ZIP below and install it. Then it runs on its own — no pasting each time.

Install in the Claude app (no terminal)
  1. Download the ZIP with the button below.
  2. In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
  3. Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
↓ Download ZIP
Install in Claude Code

Let Claude do it — paste this into Claude Code

Install the skill I found on Claude Skill Mart.
Copy the archive/plugins/cloudflare/skills/db-seed folder from the GitHub repo jezweb/claude-skills into my ~/.claude/skills/jezweb-db-seed/.
When it's done, tell me in one line what this skill can do.

Install with a command instead

git clone https://github.com/jezweb/claude-skills.git /tmp/claude-skills && mkdir -p ~/.claude/skills/db-seed && cp -r /tmp/claude-skills/archive/plugins/cloudflare/skills/db-seed/* ~/.claude/skills/db-seed/

⚠ This is a third-party skill. Check the source repository before installing.

  1. Open a terminal and clone the repo: git clone https://github.com/jezweb/claude-skills.git
  2. Create your personal skills folder: mkdir -p ~/.claude/skills/db-seed
  3. Copy the skill in: cp -r claude-skills/archive/plugins/cloudflare/skills/db-seed/* ~/.claude/skills/db-seed/
  4. Verify with ls ~/.claude/skills/db-seed — you should see SKILL.md.
  5. Start claude from inside the project that contains your database schema.
  6. Ask something like "generate seed data for this database" — the skill triggers automatically. Answer its questions about purpose, volume and domain.
  7. Run the generated file: npx tsx scripts/seed.ts for TypeScript, or npx wrangler d1 execute <DB_NAME> --local --file=./scripts/seed.sql for SQL.
  8. ⚠️ The default seed may DELETE existing rows — always run against a local/dev database first, never production.