Convertitore JSON ↔ YAML
Round-trip tra JSON e YAML nel tuo browser — perfetto per Kubernetes, GitHub Actions, Helm e configurazioni CI.
A cosa serve YAML?
YAML è il cugino più amichevole di JSON: stesso modello di dati (oggetti, array, stringhe, numeri, booleani, null), ma con indentazione significativa basata su spazi invece che parentesi graffe e quadre, e supporto per i commenti. Questo rende YAML il formato dominante per i file di configurazione modificati a mano — manifest Kubernetes, Helm values, workflow di GitHub Actions, pipeline CI, Docker Compose, playbook Ansible, e la maggior parte delle config delle app moderne stanno tutte in YAML. JSON, d'altro canto, domina i formati on-the-wire e le API perché ogni linguaggio lo sa interpretare senza pensarci. Questo convertitore ti permette di passare tra i due senza lasciare il browser. JSON → YAML è quello che fai quando vuoi prendere una risposta API e trasformarla in un manifest Kubernetes, o quando vuoi prendere una collezione Postman e riformattarla per un tutorial. YAML → JSON è quello che fai quando un tool insiste sul JSON e la tua config è in YAML, oppure quando vuoi validare un file YAML contro un JSON Schema. Tutto viene convertito direttamente nella tua scheda del browser — niente upload, niente log, nessuna copia dei tuoi manifest tenuta sul server di qualcun altro. Questo rende lo strumento sicuro anche per Helm values di livello produzione o file di workflow che contengono hostname interni, riferimenti a segreti e dettagli infrastrutturali.
Come usarlo
Scegli una direzione, incolla i tuoi dati, clicca Converti. Il risultato appare sotto con un pulsante di copia.
- Scegli la direzione — Usa JSON → YAML per trasformare risposte API o config generate in qualcosa che gli umani possano modificare. Usa YAML → JSON quando un tool richiede JSON o quando vuoi inviare una config YAML a un'API HTTP.
- Prova un preset — Clicca su Service Kubernetes, GitHub Action o Config app per caricare un esempio rappresentativo che puoi modificare e convertire. Il preset corrisponde alla direzione corrente.
- Scegli l'indentazione — 2 spazi è ciò che la maggior parte dei linter YAML e dei tool dell'ecosistema si aspetta (Kubernetes, Ansible, Helm). Usa 4 spazi solo se il tuo team ha esplicitamente standardizzato su quello.
- Ordina le chiavi per diff stabili — Attiva Ordina chiavi A→Z per ottenere un output ordinato alfabeticamente. È perfetto per i diff git e i test snapshot quando due tool emettono gli stessi dati con ordini di chiave diversi.
Regole di mappatura tra i formati
Entrambi i formati condividono lo stesso modello logico, quindi la maggior parte dei valori fa il round-trip identicamente. Stringhe, numeri, booleani, null, array e oggetti si mappano uno a uno. Il convertitore segue la specifica YAML 1.2 moderna, che (a differenza di YAML 1.1) non tratta yes, no, on, off come booleani — solo true e false — quindi eviti il leggendario "Norway problem" in cui il codice del paese NO diventa silenziosamente il booleano false. Le stringhe multi-riga in YAML usano blocchi letterali (|) o piegati (>); convertendo da JSON, questo strumento emette stringhe normali tra virgolette con escape \n per la portabilità. I commenti esistono solo in YAML; convertire JSON → YAML → JSON scarta i commenti perché JSON non ha dove metterli.
Riferimento rapido
Una manciata di valori e come si traducono tra i due formati.
| JSON | YAML |
|---|---|
{ "a": 1 } | a: 1 |
[1, 2, 3] | - 1 |
"yes" | 'yes' (con virgolette per tenerlo come stringa) |
null | null (o vuoto / ~) |
"line\nbreak" | "line\nbreak" |
{ "n": 1.0 } | n: 1.0 (resta un float) |
Domande frequenti
Perché il mio YAML mostra la stringa "true" come booleano?
YAML tratta true e false non quotati come booleani. Se vuoi la stringa di tre lettere letterale, mettila tra virgolette: flag: "true". Il convertitore rispetta quello che hai scritto.
Gestisce file YAML multi-documento?
YAML supporta più documenti in un singolo file, separati da ---. Questo convertitore interpreta solo il primo documento quando va verso JSON. Per bundle di manifest Kubernetes, dividi il file prima di incollare, oppure converti ogni documento separatamente.
Perché i miei commenti YAML sono spariti dopo il round-trip?
JSON non supporta i commenti. Quando vai YAML → JSON, tutti i commenti vengono persi. Il viaggio inverso JSON → YAML non può recuperarli. Tieni una copia dello YAML se i commenti ti servono.
La conversione è senza perdite per le configurazioni tipiche?
Per Kubernetes, GitHub Actions, Docker Compose e config simili — sì, con l'unica perdita riguardante i commenti e lo stile specifico delle stringhe multi-riga. Numeri, date interpretate come stringhe ISO, booleani, mappe annidate e array fanno il round-trip in modo pulito.
E gli ancoraggi e gli alias (&ref / *ref)?
Ancoraggi e alias vengono risolti durante il parsing, quindi l'output JSON contiene i valori materializzati che lo YAML referenziava. La direzione inversa non reintroduce gli ancoraggi automaticamente — se ci fai affidamento per tenere brevi le config DRY, dovrai riaggiungerli a mano dopo la conversione di nuovo a YAML.
Qualcosa viene inviato a un server?
No. L'intera conversione gira interamente dentro la tua scheda del browser, quindi lo YAML o JSON che incolli — inclusi manifest di produzione, riferimenti a segreti e nomi di infrastruttura interna — non raggiunge mai i nostri server o terze parti.