Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.ellomas.com/llms.txt

Use this file to discover all available pages before exploring further.

Quickstart

This guide walks through the core workflow: introspect a database, generate test data, and customize the output.

Prerequisites

  • A running Postgres or MySQL database with schema
  • Go 1.25+ (for CLI installation)

1. Install Seedling

go install github.com/tomiwa-a/seedling/cmd/seedling@latest
Or use Docker:
docker build -t seedling https://github.com/tomiwa-a/seedling.git

2. Introspect Your Schema

Point Seedling at your database to produce a schema file:
seedling introspect --db postgres://localhost:5432/mydb --output schema.yaml
This queries information_schema and writes a YAML file containing all tables, columns, types, foreign keys, and constraints. For MySQL:
seedling introspect --db mysql://user:pass@localhost:3306/mydb --output schema.yaml

3. Generate Test Data

Generate 100 rows per root table:
seedling generate --schema schema.yaml --count 100 --output seed.sql
This produces a SQL file with INSERT INTO statements respecting FK dependencies, unique constraints, and column types.

4. Verify the Output

# Count INSERT statements
grep -c "^INSERT" seed.sql

# Load into your test database
psql -d mytestdb -f seed.sql

5. Generate Deterministically (Optional)

Use a fixed seed for reproducible output:
seedling generate --count 1000 --seed 42 --output seed.sql
Run it again — the output is byte-identical.

What’s Next?