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

no-std facet-toml

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

82 releases (34 breaking)

Uses new Rust 2024

new 0.46.1 May 6, 2026
0.44.7 Apr 14, 2026
0.44.5 Mar 16, 2026
0.41.0 Dec 31, 2025
0.25.18 Jul 3, 2025

#2868 in Parser implementations

Download history 690/week @ 2026-01-15 613/week @ 2026-01-22 736/week @ 2026-01-29 455/week @ 2026-02-05 439/week @ 2026-02-12 233/week @ 2026-02-19 612/week @ 2026-02-26 290/week @ 2026-03-05 763/week @ 2026-03-12 354/week @ 2026-03-19 431/week @ 2026-03-26 672/week @ 2026-04-02 608/week @ 2026-04-09 446/week @ 2026-04-16 272/week @ 2026-04-23 400/week @ 2026-04-30

1,943 downloads per month
Used in 43 crates (10 directly)

MIT/Apache

580KB
11K 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–5.5MB
~99K SLoC