Hva er dette verktøyet?
YAML er det foretrukne formatet for de fleste moderne konfigurasjonsfiler — Kubernetes-manifester, Docker Compose, GitHub Actions og GitLab CI-pipelines, Ansible-playbooks — fordi det er mer lesbart enn JSON for mennesker som redigerer filer for hånd: du trenger ikke anførselstegn rundt de fleste nøkler, ingen etterfølgende komma å gjøre feil med, og kommentarer støttes. JSON, derimot, er det de fleste API-er og programmeringsspråk produserer og konsumerer naturlig.
Dette verktøyet bygger bro mellom de to ved hjelp av js-yaml, en mye brukt JavaScript-implementasjon av YAML-spesifikasjonen, slik at parsing og generering følger de samme reglene som et YAML-bevisst verktøy som `kubectl` eller en CI-runner ville brukt.
Å konvertere JSON til YAML gjør objekter om til innrykkede key: value-blokker og arrayer om til listeelementer med `-`-prefiks. Å konvertere YAML til JSON gjør det motsatte, og løser i tillegg opp YAML-spesifikke typesnarveier (som ukvotert `true`, `null` eller tall) til korrekte JSON-typer.
Hvorfor bruke det?
- Toveis — konverter JSON til YAML eller YAML til JSON fra samme skjerm.
- Standardbasert parsing og generering via js-yaml, slik at resultatet matcher det ekte YAML-verktøy (Kubernetes, CI-systemer, Ansible) forventer.
- Håndterer nøstede objekter og arrayer på enhver dybde, og konverterer mellom YAML-ens innrykksbaserte struktur og JSON-ens klammer og hakeparenteser.
- Tolker YAML-typesnarveier korrekt — ukvotert true/false, null og numeriske verdier blir riktige JSON-typer i stedet for strenger.
- Kopier til utklippstavlen eller last ned som .json- eller .yaml-fil.
- 100 % klientsidebasert — ingenting du limer inn blir lastet opp noe sted.
Slik bruker du det
- Velg en retning: «JSON → YAML» eller «YAML → JSON».
- Lim dataene dine inn i inndataboksen.
- Klikk «Konverter».
- Se over resultatet, kopier det, eller klikk «Last ned» for å lagre en fil.
Eksempel
Inndata
{"name":"Alice","roles":["admin","editor"],"active":true}Resultat
name: Alice
roles:
- admin
- editor
active: true
Legg merke til at arrayen blir en liste med bindestrek-elementer under «roles», og at den boolske verdien forblir ukvotert true i stedet for å bli strengen «true».
Praktiske tips
- Skriver du et Kubernetes-manifest eller en GitHub Actions-arbeidsflyt: utform strukturen som JSON først (mange editorer og AI-verktøy genererer JSON mer pålitelig), og konverter deretter til YAML for den endelige filen.
- Feilsøker du en YAML-konfigurasjon som oppfører seg rart: konverter den til JSON for å se nøyaktig hvilke verdier som er strenger, tall eller boolske verdier — YAML-ens fleksible syntaks kan skjule typefeil som er åpenbare i JSON.
- Hvis JSON-en din inneholder nøkler med spesialtegn eller som starter med et tall, vil js-yaml automatisk sette dem i anførselstegn i YAML-resultatet slik at de tolkes riktig tilbake.
Hvorfor typekonvertering er den vanskeligste delen av YAML
YAML-ens største brukervennlighetsgevinst over JSON — at du ikke trenger anførselstegn rundt de fleste verdier — er også dens største kilde til lumske feil. Det klassiske eksempelet er «Norge-problemet»: i YAML 1.1 (brukt av mange eldre parsere) tolkes en ukvotert verdi `no` som den boolske verdien `false`, ikke strengen «no», noe som har ødelagt ekte landkode-konfigurasjoner som lister opp Norge. Dette verktøyet følger YAML 1.2-spesifikasjonen, som innsnevret settet av ukvoterte verdier som tolkes som boolske til bare `true` og `false` (og variantene deres), noe som reduserer — men ikke eliminerer — denne typen overraskelser. Er du i tvil om hvordan en verdi vil bli typet, er det tryggeste valget å kvotere den eksplisitt i YAML-en din.
Ofte stilte spørsmål
Bevares YAML-kommentarer når man konverterer til JSON og tilbake?
Nei. JSON har ikke noe begrep om kommentarer, så konvertering fra YAML til JSON fjerner eventuelle #-kommentarer i kilden. Konverterer du den JSON-en tilbake til YAML, kommer ikke kommentarene tilbake — dette er en iboende begrensning i formatet, ikke en feil i verktøyet.
Hvordan håndterer verktøyet YAML-ankere og aliaser (& og *)?
Den underliggende parseren (js-yaml) løser opp ankere og aliaser før den produserer JSON, så en YAML-fil som bruker &-ankere og *-aliaser for å gjenbruke en datablokk, blir konvertert til JSON med de dataene ekspandert i sin helhet hvert sted de refereres til.
Hvorfor kom YAML-tallet mitt gjennom som en streng i JSON, eller omvendt?
Hvis en verdi er kvotert i YAML-kilden (f.eks. version: "3.10"), behandles den bevisst som en streng — dette er viktig fordi ukvoterte YAML-tall som 3.10 kan miste det etterfølgende nullet når de tolkes som flyttall. Kvoter en verdi i kilde-YAML-en hvis du spesifikt trenger at den behandles som tekst.
Kan jeg konvertere en YAML-fil med flere dokumenter (adskilt med ---)?
Dette verktøyet konverterer ett YAML-dokument om gangen. Hvis filen din har flere dokumenter adskilt med ---, konverter én seksjon om gangen, eller fjern skilletegnene og slå dem sammen til ett dokument først hvis det passer bruksområdet ditt.
Blir dataene mine lastet opp noe sted?
Nei. Konverteringen kjører helt i nettleseren din via js-yaml-biblioteket — ingenting sendes til en server, noe som gjør det trygt å bruke med ekte konfigurasjonsfiler, også slike med interne vertsnavn eller infrastrukturdetaljer.