I built a tool to generate relationship-aware test data for Database (no seed scripts)

Published: (December 17, 2025 at 05:29 AM EST)
2 min read
Source: Dev.to

Source: Dev.to

Cover image for I built a tool to generate relationship-aware test data for Database (no seed scripts)

I wanted to share a side project I’ve been working on and get some honest feedback from the community.

The idea came from a problem I kept running into—both at work and on my own side projects. Features would work perfectly in development, tests would pass, and everything would seem fine. But once the same code hit production, issues would start appearing. More often than not, the problem wasn’t the code—it was the data.

In development and testing, our datasets were usually small, clean, and unrealistic. Seed scripts helped initially, but as the application grew, schemas evolved, and relationships became more complex, those scripts became harder to maintain. Updating or rewriting scripts for every collection or schema change was time‑consuming, easy to postpone, and often skipped entirely.

That frustration is what led me to start building Drawline.

What Drawline Does

Drawline is designed to make working with realistic test data easier:

  • Connect an existing database or start with a fresh project
  • Automatically infer the database structure and relationships
  • Visualize and tweak the schema using a visual interface
  • With one click, populate a dev or test database with realistic, relationship‑aware data
  • Track and restore schema versions, similar to how version control works for code

The goal is to help developers get meaningful data early—for testing, debugging, and demos—without having to write or constantly maintain seed scripts.

The product is still early, but I’m already using it for my own projects and iterating based on real usage. If you’re curious, you can check it out at Drawline.

I’d Love Your Feedback

I’m sharing this not as a pitch, but to learn from other developers who’ve dealt with similar problems:

  • How do you currently handle test data for web applications?
  • Is this something you’d actually use, or do existing tools and scripts work well enough for you?
  • What would make a tool like this a hard “no”?

Thanks for reading, and I’d really appreciate any feedback or thoughts.

Back to Blog

Related posts

Read more »

How SQLite is tested

Article URL: https://sqlite.org/testing.html Comments URL: https://news.ycombinator.com/item?id=46303277 Points: 85 Comments: 8...

How SQLite Is Tested

Article URL: https://sqlite.org/testing.html Comments URL: https://news.ycombinator.com/item?id=46303277 Points: 27 Comments: 2...

step2

!Query Filterhttps://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2...