How to use JSON to Crystal
- Paste a representative JSON sample, ideally one with all the optional fields filled in.
- Set the name of the root type, and decide whether you want helper code as well or types only.
- Copy the generated Crystal code into your project.
About JSON to Crystal
Writing model classes by hand for a big JSON payload is dull, and it is where typos creep in. Paste a sample here and the generator works out the structure: which fields exist, which are objects, which are arrays and what type each value has. The output is classes that include JSON::Serializable from the standard library.
Properties are declared with the property macro and keys are mapped with the JSON::Field annotation when needed. Everything runs in your browser, so your sample data stays on your machine.
Using the generated code
Call Root.from_json(json) to parse and to_json to write.
Optional fields are union types such as String | Nil.