🌐 NL

🔄 YAML ↔ JSON / CSV-converter

Converteer YAML en JSON in beide richtingen. Handig om configuratiebestanden (docker-compose, GitHub Actions, k8s manifests) om te zetten naar JSON om ze programmatisch te bekijken, of om JSON om te zetten naar mensvriendelijke YAML. Het tabblad JSON↔CSV zet platte arraygegevens om naar spreadsheetklare CSV.

GIDS

Meer lezen

01

1. Wanneer gebruik je YAML versus JSON?

JSON is geoptimaliseerd voor machine-naar-machine gegevensuitwisseling (API-responses, opgeslagen configuratie) - de strikte syntaxis zorgt voor minder parseverrassingen. YAML is gebaseerd op inspringing, ondersteunt opmerkingen (#) en is prettig leesbaar voor mensen, daarom domineert het in configuratiebestanden: docker-compose.yml, GitHub Actions-workflows, Kubernetes-manifests, Ansible-playbooks. Gebruik deze tool om een YAML-configuratie om te zetten naar JSON voor programmatische verwerking, of om JSON-gegevens om te zetten naar nette, leesbare YAML.

02

2. Aandachtspunten bij conversie

YAML kan meer uitdrukken dan JSON: anchors (&), aliases (*), meerdere documentafscheiders (---) en blokscalars (| en >). Als je een document met deze elementen naar JSON converteert, worden anchors/aliases uitgewerkt naar hun letterlijke waarden, en alleen het eerste van meerdere documenten wordt geconverteerd. JSON→YAML is altijd veilig, omdat JSON vrijwel een subset van YAML is. Let op strings die op getallen lijken (bijv. een postcode "01234") - zonder aanhalingstekens kan YAML ze als getallen interpreteren.

03

3. JSON ↔ CSV en geneste structuren

CSV kan alleen een tabel weergeven (rijen en kolommen), dus het kan JSON's geneste objecten/arrays niet rechtstreeks opslaan. Deze tool maakt geneste objecten automatisch plat naar dotnotatie-kolommen zoals "user.name" en "user.age", en CSV→JSON bouwt de oorspronkelijke geneste structuur opnieuw op uit die dotnotatie-koppen. Arraywaarden (bijv. een taglijst) worden opgeslagen als een ruwe JSON-string in de cel - veiliger om via de tool heen en terug te converteren dan om ze handmatig in een spreadsheet te bewerken.

Veelgestelde vragen

Welke YAML-syntaxis wordt ondersteund?
We gebruiken de js-yaml-bibliotheek, die standaard YAML 1.2-syntaxis ondersteunt (mappen, reeksen, scalars, opmerkingen, anchors/aliases, blokscalars, meerdere gegevenstypen) - en daarmee de meeste praktijkgerichte configuratiebestandssyntaxis dekt.
Wat gebeurt er met geneste objecten in JSON→CSV?
Die worden automatisch afgevlakt naar "parent.child" dotnotatie-kolommen. Bijvoorbeeld: {"user":{"name":"Kim"}} wordt een kolom "user.name" met daarin "Kim".
Kan ik JSON met arrays naar CSV converteren?
Het hoogste niveau moet een array van objecten zijn (bijv. [{"a":1}]). Arraywaarden binnen elk object (bijv. een taglijst) worden opgeslagen als een ruwe JSON-string in de cel.
Worden mijn gegevens naar een server gestuurd?
Nee. Alle conversie gebeurt volledig in je browser (JavaScript); niets wat je invoert wordt naar een server gestuurd.