anza-xyz/wincode

Fast, bincode‑compatible serializer/deserializer focused on in‑place initialization and direct memory writes.

Rust

236

308 commits

updated Oct 12, 2026

See the code

README

wincode

Fast, bincode‑compatible serializer/deserializer focused on in‑place initialization and direct memory writes.

Crates.io version docs.rs docs

Quickstart

wincode traits are implemented for many built-in types (like Vec, integers, etc.).

You'll most likely want to start by using wincode on your own struct types, which can be done with the derive macros.

#[derive(SchemaWrite, SchemaRead)]
struct MyStruct {
    data: Vec<u64>,
    win: bool,
}

let val = MyStruct { data: vec![1,2,3], win: true };
assert_eq!(wincode::serialize(&val).unwrap(), bincode::serialize(&val).unwrap());

See the docs for more details.

Benchmarks

Run benchmarks comparing wincode against bincode:

cargo bench --features derive

Security

Release v0.1.2 has undergone 3 independent security reviews with the following firms:

Fuzzing

This crate has been fuzzed using the harness in the fuzz folder for roundtrip correctness against bincode.

anza-xyz/wincode

Fast, bincode‑compatible serializer/deserializer focused on in‑place initialization and direct memory writes.

Rust

236

308 commits

updated Oct 12, 2026

See the code

README

wincode

Fast, bincode‑compatible serializer/deserializer focused on in‑place initialization and direct memory writes.

Crates.io version docs.rs docs

Quickstart

wincode traits are implemented for many built-in types (like Vec, integers, etc.).

You'll most likely want to start by using wincode on your own struct types, which can be done with the derive macros.

#[derive(SchemaWrite, SchemaRead)]
struct MyStruct {
    data: Vec<u64>,
    win: bool,
}

let val = MyStruct { data: vec![1,2,3], win: true };
assert_eq!(wincode::serialize(&val).unwrap(), bincode::serialize(&val).unwrap());

See the docs for more details.

Benchmarks

Run benchmarks comparing wincode against bincode:

cargo bench --features derive

Security

Release v0.1.2 has undergone 3 independent security reviews with the following firms:

Fuzzing

This crate has been fuzzed using the harness in the fuzz folder for roundtrip correctness against bincode.

Project health

crates.io

Latest release

0.6.2 · Sep 28, 2026

Releases this year

28

Significant stargazers

Kirill Fomichev

490 followers · starred Nov 2025

Igor Aleksanov

260 followers · starred Sep 2026

Alexey Shekhirin

514 followers · starred Nov 2025

Dan Cline

686 followers · starred Oct 2025