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

shapely-opaque

One trait for reflection, serialization, deserialization

2 stable releases

Uses new Rust 2024

new 3.1.1 Apr 5, 2025

#2048 in Encoding

Download history 97/week @ 2025-03-31

97 downloads per month

MIT/Apache

10KB
98 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