JSON to Rust Struct
Generate Rust structs with serde derives and Option fields from any JSON.
Runs in your browser. Nothing is uploaded.
Waiting for JSON
Rust types appear here.What this does
Paste JSON and get Rust structs deriving Serialize and Deserialize for serde. Nested objects become their own structs; arrays of objects are merged into one struct.
Option and defaults
A value that is sometimes null becomes Option<T>. A key missing from some items also gets #[serde(default)] so decoding does not fail, and is skipped when serializing None. Whole numbers are i64, decimals f64, unknown values serde_json::Value.
Names
Fields are snake_case; when that differs from the JSON key (firstName → first_name) a #[serde(rename)] keeps the original. Reserved words become raw identifiers such as r#type. Two objects with the same shape share one struct.
More json tools
All- JSON to TypeScriptTurn any JSON into TypeScript interfaces. Nested types named, optional keys detected.
- JSON to Go StructGenerate Go structs with json tags from any JSON. Nested structs named, pointers for nullable values.
- JSON to Kotlin Data ClassGenerate Kotlin data classes from JSON, for kotlinx.serialization, Gson, or plain Kotlin.
- JSON to Java ClassGenerate Java records or POJO classes with Jackson annotations from any JSON.
- JSON to Python DataclassGenerate Python dataclasses, Pydantic models, or TypedDicts with type hints from any JSON.
- JSON to C# ClassGenerate C# classes for System.Text.Json or Newtonsoft from any JSON. Nullable types detected.
- JSON to Dart ClassGenerate null-safe Dart classes with fromJson and toJson from any JSON. Made for Flutter.
- JSON to Swift CodableGenerate Swift Codable structs with CodingKeys from any JSON.