top | item 37757595

Show HN: Generate JSON mock data for testing/initial app development

103 points| Nickba | 2 years ago |jsongenerator.io

25 comments

order

smalu|2 years ago

Using real domains (like yahoo.com) for "fake" e-mail address is not a good practice. There are domains like example.com, example.net or example.org for such purposes (RFC 2606, RFC 6761).

tobr|2 years ago

That depends on what you’re trying to do. If you want it to be an obvious example, @example.com is great. If you want it to look like real data, such as in a demo or a screenshot, it’s not so great.

It’s a bit like saying that every demo user should be called John Doe or Jane Doe if they aren’t actual people.

tangoalpha|2 years ago

"location": { "street": "853 Watsica Flat", "city": "North Biankaview", "state": "Wisconsin", "country": "India", "zip": "72621-2558", "coordinates": { "latitude": 6.5434, "longitude": -152.386 }

Could be a useful tool if this location data is coherent. State, City, Zip, Country and Lat/Lon are each of different places.

ivanche|2 years ago

A friend and I had started a project similar to this some 6-7 years ago. We wanted to make all the generated data consistent so if, for example, you need data about German person it would return real city name, real (or at least plausible) street name, postal number, phone numbers both mobile and fixed with the proper country and operators code, email address using national domain, personal name was chosen out of plausible names for each country etc. etc. In the end it was so much work that we abandoned it :(

netsharc|2 years ago

Yeah.. name, username, and 2 email addresses being different to one another is also irritating.. probably it's taxing for the brain if say testing with the user "brian.duncan" shows an exception in the UI, and then when scrolling through the logs one has to remember his email is "donna.tella@versace.it"...

     "name": {
        "first": "Shayna",
        "middle": "Quinn",
        "last": "Harris"
      },
      "username": "Burnice.Lehner27",
      "password": "o7DioxYA810KFBR",
      "emails": [
        "Sabryna_Roberts13@hotmail.com",
        "Stephen.Tremblay@gmail.com"
      ],

giobox|2 years ago

This is nice, but trivial to accomplish with the “faker” library available for most major programming languages - almost all reasonable web test frameworks will allow you to just make this json locally with the generated values, often with almost the exact same/extremely similar template syntax shown here.

harry_1989|2 years ago

Is there a similar tool to generate API responses once you have an OpenAPI spec? Sort of a mock server, that can give out responses as per spec and occasionally induce errors. This will be helpful in decoupling frontend and backend during initial development.

danielvaughn|2 years ago

I've been using ChatGPT for this and it produces really good results, though of course the back-and-forth is a bit clunky. Would be great to build it into a more streamlined experience.

LauraMedia|2 years ago

Really great project! I think there are three small functions that would be great additions:

* IP's (V4, V6) * Enums (maybe something like enum('active', 'inactive', 'removed').) * Texts (like blog titles or description fields)

Nickba|2 years ago

IPs and Enums added.

darnfish|2 years ago

Is there an API for this? Much more useful to have a script that generates 10k mock objects and inserts into a database than generating in this web UI and copy/pasting :~)

Nickba|2 years ago

Hoping to add that feature in. Not sure on the timeline.