skills/seed-data-generator/SKILL.md
Generates realistic test data preserving referential integrity. Reads schemas, foreign keys, and builds relationships.
npx skillsauth add fatih-developer/fth-skills seed-data-generatorInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill helps developers populate empty local or staging databases with massive amounts of realistic data for load testing and UI development.
Core assumption: Simple random strings (asdfgh) are useless for UI testing. Seed data must look real and respect Foreign Key constraints to successfully insert.
Before generating data, read the schema and understand the relationships:
orders depends on users and products.order_items depends on orders and products.users -> products -> orders -> order_items.(Never try to insert an order item before the order exists).
Map column names and data types to specific Faker generators:
email -> Faker.Internet.Email()first_name, last_name, full_name -> Faker.Person.FullName()status (VARCHAR) -> Random pick from ('active', 'pending', 'cancelled').description, bio -> Faker.Lorem.Paragraph()created_at -> Random Timestamp between NOW() - 1 year and NOW().Provide an executable seeder script (TypeScript/Prisma, Python, or raw SQL depending on the user's stack). Raw SQL is the default.
Required Outputs (Must write BOTH to docs/database-report/):
docs/database-report/seed-data-report.md)### 🔗 Dependency Graph Resolution
Insert Order:
1. `companies`
2. `users` (Depends on `companies`)
3. `posts` (Depends on `users`)
### 🛠️ Seed Script (Raw SQL)
```sql
-- Disable triggers temporarily for fast bulk inserts
SET session_replication_role = 'replica';
-- 1. Insert Companies
INSERT INTO companies (id, name, created_at) VALUES
('c1', 'Acme Corp', '2023-01-15 10:00:00'),
('c2', 'Globex', '2023-02-20 11:30:00');
-- 2. Insert Users
INSERT INTO users (id, company_id, email, first_name) VALUES
('u1', 'c1', '[email protected]', 'John'),
('u2', 'c2', '[email protected]', 'Sarah');
-- Re-enable triggers
SET session_replication_role = 'origin';
2. **Machine-Readable JSON (`docs/database-report/seed-data-output.json`)**
```json
{
"skill": "seed-data-generator",
"insertion_order": ["companies", "users", "posts"],
"faker_mappings": {
"users.email": "Faker.Internet.Email()",
"companies.name": "Faker.Company.CompanyName()"
},
"rows_generated": {
"companies": 2,
"users": 2
}
}
INSERT statements. Instead, output a Python/Node script using faker and fast bulk COPY commands.UNIQUE columns. Append id or sequence numbers to emails/usernames if necessary.tools
Create, optimize, critique, and structure prompts for AI systems. Use this skill whenever the user is designing or improving a prompt, system prompt, coding prompt, image prompt, evaluation rubric, agent prompt, workflow prompt, or MCP-oriented prompt package. Also use it when the user asks to turn vague AI behavior into a precise instruction set, tool policy, agent spec, or prompt architecture.
testing
Assumption-first architecture review skill to stress-test project plans and expose hidden risks.
testing
Enforce and manage DESIGN.md specifications, extract design systems from URLs, and combine design reasoning with token roles to prevent drift.
testing
Forces the agent to act with a Claude-like product mindset, prioritizing user journey, UX states, and visual quality before coding.