Gerador de Struct Rust para JSON Schema

Entrada Código Rust

Carregando editor…

Saída JSON Schema

Configurações

Selecione qual struct deve ser tratada como raiz do JSON Schema.

A análise ocorre inteiramente no seu navegador. Seu código não sai da página.

Cole suas structs Rust para produzir JSON Schema instantaneamente.

Suporta Option<T>, Vec<T>, HashMap/BTreeMap, atributos serde rename e structs aninhadas.

Como converter structs em Rust para JSON Schema – guia passo a passo

Este conversor online de struct Rust para JSON Schema ajuda você a gerar JSON Schema a partir de modelos reais (DTOs, structs e classes) para validar payloads, compartilhar contratos e gerar JSON mock.

  1. Etapa 1 – Cole sua fonte em Rust

    • Cole os modelos que você quer documentar no editor à esquerda.
    • Inclua tipos referenciados no mesmo trecho para que o schema possa gerar definitions.
    • Use o botão Exemplo para carregar um exemplo e ver o formato de entrada esperado.
  2. Etapa 2 – Selecione o Struct raiz (se necessário)

    • Se múltiplas definições forem detectadas, escolha a raiz que corresponde ao payload da sua API.
    • O schema de saída é construído em torno da raiz selecionada e pode incluir definições adicionais para tipos referenciados.
  3. Etapa 3 – Revise a saída do JSON Schema

    • Verifique tipos, campos obrigatórios vs opcionais e estruturas aninhadas de objeto/array.
    • Procure por definitions e $ref quando seus modelos referenciam outros modelos.
    • Copie ou baixe o schema para validação, documentação ou desenvolvimento schema-first.
  4. Etapa 4 – Valide ou gere JSON mock

    • Clique em Gerar dados mock para abrir o gerador de mock com seu schema pré-carregado.
    • Valide payloads reais contra o schema para detectar breaking changes cedo.
    • Se você depender de composição avançada de schema (por exemplo anyOf/oneOf/allOf), verifique o resultado com um validador completo como o Ajv.

Observação sobre suporte a keywords de schema

Schemas gerados podem incluir $ref e podem ser editados para incluir anyOf, oneOf, ou allOf. Para schemas complexos, use um validador completo de JSON Schema e faça dereference antes de gerar mock data, se necessário.

Ferramentas relacionadas de JSON Schema e geração de código

Use estas ferramentas para validar schemas, gerar payloads mock, formatar exemplos JSON e manter código e contratos alinhados.

Perguntas Frequentes

Qual sintaxe Rust é suportada?

Structs nomeadas com campos públicos, structs aninhadas, Option<T>, Vec<T>, arrays, HashMap/BTreeMap, referências, lifetimes (ignorados para schema) e anotações serde como #[serde(rename = "...")] são suportados. Enums são ignorados por enquanto, então cole os tipos struct que representam seus payloads JSON.

Como tipos Rust são mapeados para JSON Schema?

Tipos primitivos como String, bool, inteiros, floats, chrono::DateTime e uuid::Uuid são mapeados para primitivas JSON Schema. Vec<T> vira arrays, HashMap<string, T> vira objetos e Option<T> marca automaticamente o campo como opcional.

A conversão roda localmente?

Sim. Tudo roda no seu navegador, então seu código Rust não sai da sua máquina. Cole structs do seu projeto e selecione a struct raiz no painel de configurações.

Como obter payloads JSON mock?

Depois de gerar o schema, clique em "Gerar dados mock" para abrir o Mock Generator com o schema pré-carregado. Configure locale, quantidade em arrays e campos opcionais para criar payloads instantaneamente.

Gerador de Struct Rust para JSON Schema | JSONSwiss