6 releases

0.3.2 Dec 31, 2020
0.3.1 Dec 31, 2020
0.2.0 Dec 30, 2020
0.1.1 Dec 29, 2020


1.5K SLoC


Crates.io Docs.rs CI Coverage Status


  • DSL
  • Reified Form
    • Convert parsed schema-schema to its reified JSON form
    • Convert reified form of the schema-schema back to its DSL representation (sans comments)
    • Generate arbitrary IPLD schemas in reified form from the parsed schema-schema
    • Validate IPLD schema in reified form against the schema-schema and additional constraints (e.g. "rules around valid characters for type names")
    • Generate Rust types from a valid IPLD schema
    • Test generated IPLD schemas against implementations in other languages
    • Parse IPLD values into Rust types generated from a compatible schema
    • Generate arbitrary IPLD values from the reified form of some IPLD schema
    • Verify generated IPLD values roundtrip through parsing to Rust types which were generated from the IPLD schema


Licensed under either of

at your option.


Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.



~61K SLoC