NDJSON viewer
One JSON value per line. A broken line is a broken line, not a broken file — it is counted, shown, and the other lines still read.
What you get
- Reads the sample as 5 lines, 1 of them broken — the verdict says so, and “broken only” shows just that one
- Level chips — info · warn · error — from the level field, several at once, each with its count
- A filter box that takes words, field=value, field!=value, -word and /regex/ — keys and values offered as you type, the match count measured
- A record’s fields in a panel; a field holding packed JSON opens as nested rows
- Convert the rows to CSV, a Markdown table, YAML or a JSON array; Compare two runs by record
What it will not do
- Stream from a URL or tail a file — the text you paste or drop is the text it reads.
- Fix a broken line without asking. Broken rows are grouped by cause and fixed by the group when you say.
- Upload the file. It is read in your tab, and a large input is stored in this browser only.
What a line can be
- A record
One JSON value per line; its keys become the columns.
- A broken line
Counted, shown as the text it is, marked “won’t parse”. The other lines still read.
- A level
A level field becomes chips — info · warn · error — each with its count, several at once.
- words
The filter box matches the words anywhere in a record.
- field=value
One field, one exact value — the keys and their values are offered as you type.
- field!=value
The same field, with that value left out.
- -word
The lines without the word.
- /regex/
A regular expression over the whole line.
- broken only
Only the lines that did not parse.
The sample
What the first sample opens — a real file, not an illustration written for this page.
in VS Code
The status bar counts the rows and the broken ones; Read as records opens them beside the text, each broken record fixed alone.
Questions
What is the difference between NDJSON and JSON Lines?
None that matters here: both are one JSON value per line, newline-separated. .ndjson, .jsonl and .log files open the same way.
Can I convert NDJSON to a JSON array?
Yes — Convert writes the rows as a JSON array, or as CSV, YAML, XML or a Markdown table.
Can I see only the errors?
Yes. The level chips filter by the level field, and “broken only” shows the lines that did not parse.
Does a broken line stop the file?
No. Each line parses on its own; the broken one is counted and listed, and the others read.