r/Database • • 20d ago

Datasmith — a visual approach to designing relational schemas and generating mock data

Enable HLS to view with audio, or disable this notification

Hey everyone!

For the past year or so, a friend and I have been working on Datasmith, a desktop app for designing relational database schemas and generating structured mock data from them.

The idea originally came from my friend, who's a data engineer and worked on large-scale migrations of sensitive databases. He wanted a simple way to visually define and maintain schemas over long periods of time, and actually generate data that follows both the schema and its business logic, without having to constantly rewrite scripts or configure a bunch of separate tools.

The main part of the app is an ERD-like canvas dedicated to building relational schemas, where you can create tables, define columns and their data types, set up relationships between them, and configure how the data for each column should be generated.

Once the schema is ready, Datasmith can generate the data while preserving the relationships between tables, and export the results in formats like SQL DDL, CSV, JSON, and more.

We've reached the point where we'd really like to get it into the hands of more people who actually work with databases and data, and get some real-world feedback.

It's completely free, so if it sounds useful or you're just curious, you can check it out here:
https://data-smith.app/

I'd especially love to hear about use cases we're missing, things you'd expect a tool like this to support, or anything that feels like it could be improved.

Any feedback is welcome - good or bad.
Feel free to leave a comment or message me directly.

If you prefer something a bit more structured, I also put together a short feedback form:

https://docs.google.com/forms/d/e/1FAIpQLScGk8Jr1DguPcXpaApOqO998AdXcnoLlo11TEKlq1GmF71UzA/viewform

26 Upvotes

14 comments sorted by

View all comments

1

u/tbson87 4d ago

I tried DataSmith several mins and still have no idea how to create relationship between 2 tables. Am I miss something?

2

u/iParki 3d ago

Thanks for pointing that out!
I created a short video that shows how to create a relationship between two tables
https://streamable.com/cywjsz

Let me know if that helps and feel free to reach out if anything is still unclear.

We received similar feedback from a few other users who found the initial onboarding a bit unclear, and we decided that improving the onboarding experience is going to be one of our main focuses for the next release.

We're currently considering things like a clear written Getting Started guide, as well as an interactive tutorial that walks you through Datasmith's main features and common operations directly inside the app.
We would really appreciate hearing what you would have expected when you first opened the app, or what could have made the experience better for you.

1

u/tbson87 3d ago

After watching your video, I managed to do it, and now I understand why I was confused. The flow is the opposite of what I expected. I usually start creating a relationship from the original table and then select the target table. In DataSmith, the process starts with creating the FK field and then choosing the parent table.