PK Systems PK Systems
Strumenti per sviluppatori

Convertitore JSON ↔ YAML

Round-trip tra JSON e YAML nel tuo browser — perfetto per Kubernetes, GitHub Actions, Helm e configurazioni CI.

Convertitore JSON ↔ YAML

Output

Clicca "Converti" per eseguire la conversione.

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.

  1. 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.
  2. 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.
  3. 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.
  4. 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
- 2
- 3
"yes"'yes' (con virgolette per tenerlo come stringa)
nullnull (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.