Paste valid JSON into the input area on the left.
Set the root struct name (defaults to 'Root') using the option field.
Toggle Serde derives (Serialize, Deserialize), Debug derive, and the serde rename_all convention.
Click Convert or press ⌘↵ (Mac) / Ctrl+Enter (Windows) to generate Rust structs.
Copy the generated Rust code or download it as a .rs file.
Generates idiomatic Rust structs from any JSON object or array.
Supports nested objects — creates separate named structs for each nested structure.
Optional #[derive(Serialize, Deserialize)] for serde JSON support.
Optional #[derive(Debug)] for easy debug printing.
Optional #[serde(rename_all = "camelCase")] or snake_case renaming to map Rust field names to JSON keys.
Smart type inference: String, f64, bool, Vec<T>, Option<T>, and nested struct types.
Works entirely in your browser — JSON never leaves your device.
Keyboard shortcut ⌘↵ for instant conversion.