JSON Loupe for macOS
Email christian@weinmayr.co — I read every message and usually reply within a couple of days. Including the file that misbehaved (or a small excerpt of it) helps enormously.
Launch JSON Loupe once after installing — that registers the Quick Look extension with macOS. From then on, select any JSON file in Finder and press the Space bar.
You can also drop a file on the app's window, or use File → Open, to view it in its own window.
macOS keeps Quick Look extensions disabled until they're switched on. Open System Settings → General → Login Items & Extensions, find Quick Look, and make sure JSON Preview is ticked. Launching the app once also helps macOS notice the extension.
If a file previewed as plain text before you installed JSON Loupe, macOS may have cached that. Opening the file's folder again, or restarting Finder, refreshes it.
.json, .jsonl, .ndjson, .geojson, .jsonc, .json5, .har, .webmanifest, .ipynb and .map. A .json file that actually contains line-delimited records is detected and shown as JSONL.
That's deliberate. Quick Look has to appear instantly, so JSON Loupe reads only the first couple of megabytes (or the first 200 records of a JSONL file) and tells you exactly how much it's showing. The rest of the file is untouched.
JSON Loupe never hides a broken file. For a JSON document it shows the parse error's exact line and column, then the raw text underneath. For JSONL, the bad records are marked inline and every other record still renders normally.
Colouring millions of individual tokens would make the preview slow and memory-hungry, so highlighting stops after a large number of tokens. The text itself is always shown in full (up to the preview limit), and a banner tells you when this happens.
No. It has no network access at all, collects no data, and reads your files read-only. See the privacy policy.
macOS 15 or later, on Apple silicon or Intel.