JSON Online is a fast, browser-based JSON toolkit for developers.
Website: https://jsononline.app
This repository contains the Nuxt frontend for JSON Online, including the editor, formatter, validator, converters, large-file viewer, JSONPath tools, and the client-side encrypted sharing UI.
- JSON editor with formatting, minifying, validation, and key sorting
- Tree viewer for exploring nested JSON
- JSON diff view
- JSONPath tester
- JSON Schema validator
- JSON to CSV / CSV to JSON
- JSON to XML / XML to JSON
- Large JSON viewer and troubleshooting pages
- PWA support for offline use
- Multi-language UI
- End-to-end encrypted share links
- Nuxt 4
- Vue 3
- Tailwind CSS
- CodeMirror 6
- Nuxt i18n
- Cloudflare Pages deployment target
Most JSON processing happens locally in the browser.
- Editor content, tabs, preferences, and received shared documents are stored in local browser storage (IndexedDB and localStorage).
- The share feature encrypts content client-side before upload.
- The decryption key is stored in the URL fragment and is not sent to the share API.
This repo is the frontend only.
The encrypted share workflow expects an external share API configured through NUXT_PUBLIC_SHARE_API_URL. The frontend sends encrypted payloads to that API and reads encrypted payloads back from it.
If you want to self-host sharing, you need a compatible backend service.
- Node.js 20+
- Yarn 4+
yarn installCreate a local env file, for example .env.local:
cp .env.example .env.localAvailable public environment variables:
NUXT_PUBLIC_TURNSTILE_SITE_KEY: Cloudflare Turnstile site key used by the share dialogNUXT_PUBLIC_SHARE_API_URL: share API base URL
The example file uses Cloudflare Turnstile test keys for local development.
yarn devOpen the local URL shown by Nuxt in your browser.
yarn dev: start the local dev serveryarn build: build the production appyarn generate: generate a static buildyarn preview: preview the production buildyarn deploy: build and deploy with Wrangler Pagesyarn preview:wrangler: preview the Cloudflare Pages build locallyyarn test: run the test suite onceyarn test:watch: run tests in watch mode
The project is configured for Cloudflare Pages.
yarn deployRelevant config files:
nuxt.config.tswrangler.tomlpwa-assets.config.ts