Acerca de esta herramienta
La herramienta JSON a structs Serde de Rust convierte una muestra JSON pegada en structs de Rust anotados para serde, para que puedas deserializar el mismo payload sin escribir a mano cada campo. Analiza el JSON, infiere tipos de Rust de forma recursiva y emite un struct #[derive(Serialize, Deserialize, ...)] por objeto: las cadenas pasan a String, los enteros a i64 (o u64 cuando todas las muestras son no negativas), otros números a f64, los booleanos a bool, los arrays a Vec<T>, y los objetos anidados a sus propios structs en PascalCase definidos antes que sus padres.
Todo el trabajo ocurre localmente en tu navegador con JSON.parse y JavaScript plano: nada se sube. Los campos del struct se convierten a snake_case, y siempre que una clave JSON difiera del campo snake_case la herramienta añade #[serde(rename = "originalKey")] para que el struct siga mapeando al formato de transmisión. Las claves ausentes en algunas muestras hermanas, o vistas como null, pasan a Option<T> con #[serde(default)] para que la deserialización tolere su ausencia. Los arrays vacíos recurren a Vec<serde_json::Value>.
El interruptor de ancho de entero alterna entre enteros de 64 bits (i64/u64, por defecto) y de 32 bits (i32/u32), promoviendo a 64 bits automáticamente cuando un valor de muestra excede el rango de 32 bits. El interruptor de derive elige entre el conjunto completo (Serialize, Deserialize, Debug, Clone) y un mínimo Serialize, Deserialize. El archivo comienza con use serde::{Serialize, Deserialize};. Cópialo o descarga un archivo .rs.