#schemafy #schema #schemafy-core

schemafy_core

Generates serializeable Rust types from a json schema

4 releases

0.6.0 Oct 6, 2021
0.5.2 May 18, 2021
0.5.1 Jul 12, 2020
0.5.0 Jul 7, 2019

#4 in #schemafy

Download history 10911/week @ 2024-12-21 13694/week @ 2024-12-28 24310/week @ 2025-01-04 29761/week @ 2025-01-11 37940/week @ 2025-01-18 39660/week @ 2025-01-25 40393/week @ 2025-02-01 43586/week @ 2025-02-08 38181/week @ 2025-02-15 40832/week @ 2025-02-22 32569/week @ 2025-03-01 36346/week @ 2025-03-08 30701/week @ 2025-03-15 28739/week @ 2025-03-22 28647/week @ 2025-03-29 21950/week @ 2025-04-05

116,725 downloads per month
Used in 102 crates (6 directly)

MIT license

6KB
129 lines

schemafy

Build Status Docs

This is a Rust crate which can take a JSON schema (draft 4) and generate Rust types which are serializable with serde. No checking such as min_value are done but instead only the structure of the schema is followed as closely as possible.

As a schema could be arbitrarily complex this crate makes no guarantee that it can generate good types or even any types at all for a given schema but the crate does manage to bootstrap itself which is kind of cool.

Example

Generated types for VS Codes debug server protocol: https://docs.rs/debugserver-types

Development

The types generated by the JSON schema specification can be regenerated with cargo build --features internal-regenerate if changes have been made in the library itself. Rustfmt is required so that src/schema.rs is readable.

Dependencies

~0.6–1.5MB
~33K SLoC