Come si usa
- Incolla YAML nell'input o prova l'esempio.
- Scegli un'indentazione di 2 o 4 spazi.
- Copia il JSON o scaricalo come file .json.
Come funziona
Il YAML viene analizzato con la libreria open-source yaml usando lo schema core YAML 1.2, che è ciò che gli strumenti moderni si aspettano: yes, no, on e off restano stringhe e solo true e false sono booleani. Le ancore (&name) e gli alias (*name) vengono espansi e le chiavi di merge << vengono applicate; il numero di espansioni degli alias è limitato, quindi i documenti volutamente esplosivi vengono rifiutati invece di bloccare la pagina.
Un file con più documenti separati da --- diventa un array JSON con un elemento per documento. Commenti, ancore e tag non hanno un equivalente JSON e vengono eliminati; le chiavi mantengono il loro ordine. I timestamp restano stringhe. Gli interi con più di circa 15 cifre perdono precisione, come con qualsiasi JSON gestito in JavaScript.
Se il YAML non è valido, viene mostrato il primo errore con riga e colonna, ad esempio un tab usato per l'indentazione o una parentesi di chiusura mancante. Per la direzione opposta usa da JSON a YAML, oppure il convertitore bidirezionale JSON ⇄ YAML.
Esempi
File CI con ancore
Un elenco di job che riutilizza un blocco defaults con <<: *defaults diventa JSON con i valori predefiniti copiati in ogni job, così puoi vedere esattamente cosa riceve ogni job.
File Kubernetes multi-documento
Un file con un Deployment e un Service separati da --- diventa un array JSON di due oggetti, pronto per kubectl o jq.
Domande frequenti
Perché yes resta una stringa?
YAML 1.2, usato qui e dalla maggior parte degli strumenti attuali, tratta solo true e false come booleani. I parser YAML 1.1 meno recenti trasformavano yes, no, on e off in booleani, causando molti bug.
Cosa succede ai commenti?
JSON non ha commenti, quindi vengono eliminati. I dati restano invariati.
C'è un limite di dimensione?
Solo la memoria del tuo browser. I file di grandi dimensioni vengono convertiti dopo una breve pausa durante la digitazione, così la pagina resta reattiva.
Privacy
La conversione avviene interamente nel tuo browser. I tuoi file YAML e JSON non vengono caricati né memorizzati.