Back to docs

Getting Started

DataSynthify generates realistic, relational SQL dummy data that respects your schema's foreign key constraints. This guide walks you through the first steps.

Prerequisites

  • A running PostgreSQL, MySQL, SQLite, or CockroachDB database
  • Node.js 18+ (for the CLI, coming soon)

Connect Your Database

Point DataSynthify at your database by setting DATABASE_URL in a .env file:

DATABASE_URL=sqlite://./myapp.db
# or
DATABASE_URL=postgresql://user:password@localhost:5432/mydb

Then run the GUI:

datasynthify --gui

The server starts on http://localhost:7400.

Generate Data

  1. Open the GUI at http://localhost:7400
  2. DataSynthify introspects your schema automatically
  3. Review the AI-assigned generators for each column
  4. Adjust any column to a different generator using the dropdowns
  5. Click Preview to see sample rows before committing
  6. Click Push to Database to insert the generated rows

Relational Integrity

DataSynthify resolves foreign keys automatically. Parent tables are generated first and their primary keys are propagated to child tables — no orphan rows, no constraint violations.

Next Steps

  • Configure row counts per table in data-synthify.config.json
  • Use the custom.enum generator for controlled vocabulary columns
  • Explore regex.from_pattern for custom-formatted strings (e.g., ticket codes, invoice IDs)