Pretty-print JSON in the browser without pasting tokens into a random viewer
Tool Hub formats JSON in your tab. Use it for dumps that may contain secrets. Nothing is uploaded.
3 min read
API dumps and config files can contain tokens, emails, and internal hostnames. A pretty-printer that posts the paste to a server is a leak with syntax highlighting.
JSON viewer on Tool Hub formats in your browser. You paste or pick a file on your computer. We do not log the document.
When this viewer is the right tool
Use this page when you need to see structure: nested keys, a trailing comma that broke a deploy, a config you were emailed. Typical jobs: a webhook body; an export from an app; a settings.json you should not put in Slack.
This is not a linter-as-a-service in the cloud. Invalid JSON will fail locally with a parse error. That is expected. This is not a schema host. This is not the CSV viewer — grids belong on CSV viewer.
I paste here when I would not paste there. If the dump is huge, I still prefer a local editor. This page is the quick look.
What “in the browser” means
Parse and indent in the tab. No upload API for the text. Load the page, go offline, paste {"ok":true}. If it still pretty-prints, we did not need the payload.
How I view JSON here
- Open https://tools.sw-commercial.com/json-viewer.
- Paste or pick the
.jsonfile. Prefer the file over retyping. - If parse fails, read the error. Fix the dump in an editor, not by sending it to a “JSON fixer” website.
- Collapse or scan keys for
password,token,secret. If you see them, you now know not to share the screenshot. - Close the tab. Copy only the fragment you need into the ticket, with secrets removed.
No account.
Failure cases I hit while using it
JSONC (comments) and trailing commas from JavaScript. Strict JSON parsers reject them. That is not a hub bug. Strip comments locally.
A single-quoted Python dict. That is not JSON. Convert it locally or by hand.
A 50 MB pretty-print that freezes the tab. Use a local tool. Do not upload the 50 MB to “just format it.”
When not to use this page
Do not paste production secrets to compare two viewers. One local viewer is enough.
Do not treat formatted JSON as validated schema. Validation is a different job.
Do not screenshot the whole dump for a group chat.
Related jobs on the same hub
CSV viewer. Case converter if you are renaming keys by hand. Word counter is the wrong tool for a blob of keys.
Live at tools.sw-commercial.com/json-viewer.
A worked example
A webhook failed. The body is 40 KB of JSON with a token next to an error object. I pretty-print locally, find the token, redact it in the ticket, paste only the error object. I do not drop the raw body into a public JSON paste site.
If parse fails on a trailing comma, I fix the dump in an editor. I do not send it to a “repair JSON” cloud. The repair is a comma. JSONC comments are not JSON; strip them locally. A 50 MB pretty-print that freezes the tab belongs in a local editor, not an upload.
FAQ
Is pretty-print validation? No. It only checks that the text parses as JSON. Are comments allowed? Not in strict JSON. Should I paste production tokens to compare two websites? No. One local viewer is enough. If the dump is a CSV, use the CSV viewer, not this page.
How I test that the bytes stayed local
I load the Tool Hub page, wait until it is usable, then disconnect the network (airplane mode, or unplug after the JavaScript is cached). I repeat the job with a throwaway file or a throwaway paste. If the result still appears, that step did not need SW Commercial’s servers. The first visit still has to download the page itself. That is HTML, CSS, JavaScript, and sometimes a codec. It is not the document I care about.
Browser developer tools also show it. A converter that posts a multipart file to /api/upload is an upload converter. These Tool Hub jobs are not built that way. Ads, if shown, are labeled and do not receive the file. The SW Toolbox extension has 0 ads if you prefer that surface for the same engines.
I would rather keep one extra paragraph in a how-to than send a reviewer to a tool that 404s. The JSON viewer URL returned HTTP 200 when this guide was written.