#serialization #deserialize #reflection #schema-validation #schema

app shapely-codegen

One trait for reflection, serialization, deserialization

2 stable releases

Uses new Rust 2024

3.1.0 Mar 31, 2025
3.0.0 Mar 31, 2025

#1142 in Encoding

Download history 171/week @ 2025-03-26 88/week @ 2025-04-02

259 downloads per month

MIT/Apache

6KB
107 lines

shapely

experimental free of syn crates.io documentation MIT/Apache-2.0 licensed

Important

There is no stable shapely API as of now (even though it's >1.0.0). The design is very much still being explored.

Expect multiple major versions in the near future — (note left 2025-03-11)

A Rust reflection, introspection, serialization and deserialization framework with support for multiple formats including JSON, YAML, MessagePack, URL-encoded data, and more.

A single, lightweight derive macro (thanks to unsynn)

#[derive(Shapely)]
struct Blah {
    foo: u32,
    bar: String,
}

...gives you the equivalent of Debug, Serialize, Deserialize, and more.

shapely's approach is halfway between serde and bevy_reflect

See the shapely README for more info.

Funding

Thanks to Namespace for providing fast GitHub Actions workers:

License

Licensed under either of:

at your option.

No runtime deps