#json-schema #schema #generator #json #generate-json #code

jsonschema_code_generator

Crate for generating rust types from JSON schemas

6 releases (2 stable)

2.0.0 Jun 29, 2021
1.0.0 Jun 29, 2021
0.2.1 Jun 28, 2021
0.1.1 May 21, 2021

#1332 in Procedural macros

Download history 6/week @ 2024-07-16 7/week @ 2024-07-23 6/week @ 2024-07-30 4/week @ 2024-08-06 4/week @ 2024-08-13 1/week @ 2024-09-17 11/week @ 2024-09-24

54 downloads per month
Used in webthings-gateway-ipc-typ…

MPL-2.0 license

79KB
2K SLoC

jsonschema_code_generator

Build Status Latest Version Docs

This Rust crate allows you to generate Rust types from JSON Schemas.

It attaches serde_json attributes to the structs for json serialization/deserialization.

Example

use jsonschema_code_generator::generate;
use std::path::Path;

fn main() {
    let rust_code = generate(&Path::new("schemas/draft-04.json"));
    println!("{}", rust_code);
}

Todo

  • Add support for draft 4 schemas
  • Resolve definitions across files
  • Resolve struct name collisions
  • Add macro
  • Merge anyOf and allOf definitions to a single type
  • Add support for draft 7 schemas
  • Add support for draft 2019-09 schemas
  • Add support for draft 2020-12 schemas

Dependencies

~0.8–1.7MB
~35K SLoC

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy