#toml-serialization #serialization #parser #facet #toml

no-std facet-toml

TOML serialization for facet using the new format architecture - successor to facet-toml

79 releases (33 breaking)

Uses new Rust 2024

new 0.44.6 Apr 10, 2026
0.44.5 Mar 16, 2026
0.43.2 Jan 23, 2026
0.41.0 Dec 31, 2025
0.25.18 Jul 3, 2025

#2936 in Parser implementations

Download history 346/week @ 2025-12-19 516/week @ 2025-12-26 1137/week @ 2026-01-02 791/week @ 2026-01-09 628/week @ 2026-01-16 677/week @ 2026-01-23 675/week @ 2026-01-30 419/week @ 2026-02-06 439/week @ 2026-02-13 362/week @ 2026-02-20 568/week @ 2026-02-27 274/week @ 2026-03-06 752/week @ 2026-03-13 311/week @ 2026-03-20 517/week @ 2026-03-27 606/week @ 2026-04-03

2,268 downloads per month
Used in 36 crates (9 directly)

MIT/Apache

1.5MB
23K SLoC

facet-toml

TOML serialization for facet using the new format architecture.

This is the successor to facet-toml, using the unified facet-format traits.

Deserialization

use facet::Facet;
use facet_toml::from_str;

#[derive(Facet, Debug)]
struct Config {
    name: String,
    port: u16,
}

let toml = r#"
name = "my-app"
port = 8080
"#;

let config: Config = from_str(toml).unwrap();
assert_eq!(config.name, "my-app");
assert_eq!(config.port, 8080);

Dependencies

~4–17MB
~184K SLoC