Quick Start
From a Live Database
Section titled “From a Live Database”The fastest way to get started is to point DBSprout at an existing database:
# Initialize from a PostgreSQL databasedbsprout init --db postgresql://user:pass@localhost/myapp
# Generate seed data (default: 100 rows per table)dbsprout generateThis will:
- Introspect your schema (tables, columns, foreign keys, constraints)
- Analyze column names and types to pick appropriate generators
- Resolve FK dependencies via topological sort
- Generate realistic data that respects all constraints
- Output SQL INSERT statements to
./seed.sql
From a Schema File
Section titled “From a Schema File”No database connection needed — use a DDL file, DBML, Prisma schema, or other supported format:
# From a SQL DDL filedbsprout init --file schema.sql
# From a DBML filedbsprout init --file schema.dbml
# From a Prisma schemadbsprout init --file prisma/schema.prismaCustomizing Output
Section titled “Customizing Output”# Generate 5000 rows per tabledbsprout generate --rows 5000
# Output as CSV filesdbsprout generate --output-format csv
# Output as JSONdbsprout generate --output-format json
# Direct insertion into PostgreSQL (uses COPY for speed)dbsprout generate --output-format direct --db postgresql://localhost/myapp
# Set a seed for deterministic outputdbsprout generate --seed 42Using the Spec Engine
Section titled “Using the Spec Engine”For higher-quality data, use the spec engine which leverages an AI model to understand your schema semantically:
# Uses the embedded model (offline, no API key needed)dbsprout generate --engine spec
# Or use a cloud providerdbsprout generate --engine spec --llm-provider openaiNext Steps
Section titled “Next Steps”- Schema Input — All supported schema formats
- Data Generation — Generation engines and options
- Output Formats — All output format details
- LLM Configuration — Embedded and cloud LLM setup