JSON to Rust Converter

Paste a JSON sample — an API response or a config file — and get ready-to-use Rust Structs with nested types, arrays and optional fields detected automatically.

Runs in your browserUpdated
TypeScript

Your data never leaves your computer. All processing happens 100% locally in your browser.

How to use the JSON to Rust

  1. Paste a JSON sample in the input — Rust is already selected.
  2. Set the root type name and options such as optional fields and date detection.
  3. Copy the generated Rust code into your project.

JSON to Rust structs

Each JSON object becomes a Rust struct deriving Serialize and Deserialize with serde. Fields are snake_case with #[serde(rename = "key")] where the JSON differs, optional values are Option<T>, arrays are Vec<T>, and numbers become i64 or f64.

Parsing

Add serde (with the derive feature) and serde_json, then call serde_json::from_str::<Root>(&json)?. Missing optional fields deserialize to None.

Private by design

The conversion runs entirely in your browser — API responses with customer or internal data are never uploaded.

Tools that pair well with the JSON to Rust

  • JSON Validator — Paste JSON to check whether it is valid.
  • JSON Schema Validator — Paste a schema and some JSON to see exactly which values break which rule — or generate a starting schema from example data.
  • Mock Data Generator — Create up to 10,000 rows of realistic test data — users, products, orders, addresses, companies or nested API records — or build your own schema.
  • JSONPath Tester — Type a JSONPath query and instantly see what it selects — with the exact path of each match.

Frequently asked questions

How are nested JSON objects converted to Rust?
Each nested object becomes its own named struct, named after its key, and referenced from the parent. Arrays become typed lists of the element type.
What happens with fields that are missing or null in some items?
When you paste an array of objects, fields that are missing or null in some items are marked optional (nullable), so the generated code matches real API responses.
Is my JSON uploaded?
No. The conversion runs entirely in your browser, so API responses with private data never leave your device.
Can I install JSON to Rust as a web app and use it offline?
Yes. JSON to Rust is an installable web app (PWA) — installed from your browser, not downloaded from an app store. Click Install app at the top of this page in Chrome or Edge (Windows, macOS, Linux, ChromeOS) or on Android, use Share → Add to Home Screen on iPhone and iPad, or File → Add to Dock in Safari 17+ on a Mac. It then opens in its own window with its own icon, and because it runs entirely in your browser it keeps working offline. Firefox on desktop can’t install web apps. How installing works.

Related tools