What this tool does
Each CSV row becomes one mapping in a YAML list, keyed by the header. Values are typed the same way as for JSON: 30 is a number, true a boolean, and a leading zero keeps the value a string.
The indentation is yours to choose above the editor.
The values YAML quotes, and the ones it does not
Quoting here is not decoration — it is what stops a value from changing meaning when someone reads the file back:
3.0is quoted, because bare it would return as the number 3;- the text
nullis quoted, so it stays the word and does not become an absent value; - an empty field is quoted as
"", for the same reason.
There are two it leaves bare, and they are worth knowing about: yes and no. In YAML 1.2 — what this tool emits — they are ordinary strings. In YAML 1.1 they are booleans, and PyYAML still reads them that way. If your output is heading for a Python tool, quote those columns in the CSV first.
Multi-line cells
A CSV field may contain a line break, and YAML can hold one without losing it. Such a cell comes out as a block scalar introduced by |-, its content indented beneath the key. Nothing is flattened and nothing is escaped.
Private by design
Everything runs locally in your browser with JavaScript. Your data is never uploaded, which makes the tool safe for sensitive content, and it keeps working offline.