Generatore struct Rust → JSON Schema

Input Codice Rust

Caricamento editor…

Output JSON Schema

Impostazioni

Seleziona quale struct deve essere trattata come root del JSON Schema.

Il parsing avviene interamente nel tuo browser. Il sorgente non lascia mai la pagina.

Incolla le tue struct Rust per produrre JSON Schema istantaneamente.

Supporta Option<T>, Vec<T>, HashMap/BTreeMap, attributi serde rename e struct annidate.

Come convertire struct Rust in JSON Schema – guida passo‑passo

Questo convertitore online struct Rust → JSON Schema ti aiuta a generare JSON Schema da modelli reali (DTO, struct e classi) per validare payload, condividere contratti e generare JSON mock.

  1. Passo 1 – Incolla il sorgente Rust

    • Incolla i modelli che vuoi documentare nell’editor di sinistra.
    • Includi i tipi referenziati nello stesso snippet in modo che lo schema possa generare le definizioni.
    • Usa il pulsante Esempio per caricare un esempio e vedere il formato atteso.
  2. Passo 2 – Seleziona il Struct root (se necessario)

    • Se vengono rilevate più definizioni, scegli la root che corrisponde al payload della tua API.
    • Lo schema di output è costruito attorno alla root selezionata e può includere definizioni aggiuntive per i tipi referenziati.
  3. Passo 3 – Controlla l’output JSON Schema

    • Verifica tipi, campi richiesti vs opzionali e strutture annidate di oggetti/array.
    • Cerca definitions e $ref quando i tuoi modelli fanno riferimento ad altri modelli.
    • Copia o scarica lo schema per validazione, documentazione o sviluppo schema‑first.
  4. Passo 4 – Valida o genera JSON mock

    • Fai clic su Genera dati mock per aprire il generatore di mock con lo schema pre‑caricato.
    • Valida payload reali rispetto allo schema per intercettare breaking change in anticipo.
    • Se usi composizione avanzata dello schema (ad esempio anyOf/oneOf/allOf), verifica il risultato con un validatore completo come Ajv.

Nota sul supporto delle keyword dello schema

Gli schemi generati possono includere $ref e possono essere modificati per includere anyOf, oneOf, o allOf. Per schemi complessi, usa un validatore JSON Schema completo e dereferenzia prima della generazione dei mock se necessario.

Strumenti correlati per JSON Schema e generazione di codice

Usa questi strumenti per validare schemi, generare payload mock, formattare esempi JSON e mantenere allineati codice e contratti.

Domande frequenti

Quale sintassi Rust è supportata?

Sono supportate struct nominate con campi pubblici, struct annidate, Option<T>, Vec<T>, array, HashMap/BTreeMap, reference, lifetime (ignorati per lo schema) e annotazioni serde come #[serde(rename = "...")]. Gli enum sono ignorati per ora: incolla le struct che rappresentano i payload JSON.

Come vengono mappati i tipi Rust su JSON Schema?

Tipi primitivi come String, bool, interi, float, chrono::DateTime e uuid::Uuid mappano a primitivi JSON Schema. Vec<T> diventa array, HashMap<string, T> diventa oggetti e Option<T> marca automaticamente il campo come opzionale.

La conversione gira localmente?

Sì. Tutto gira nel browser, quindi il tuo codice Rust non lascia la macchina. Incolla struct dal progetto e seleziona la struct root nel pannello impostazioni.

Come ottengo payload JSON mock?

Dopo la generazione dello schema, fai clic su "Genera dati mock" per aprire il Mock Generator con lo schema pre‑caricato. Configura locale, numero elementi array e campi opzionali per creare subito payload di esempio.

Generatore struct Rust → JSON Schema | JSONSwiss