From 4039d245fd17459a34e5209221ae2ea7a209513e Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 6 Aug 2026 19:44:42 +0000 Subject: [PATCH 1/2] Add JSON Formatter tool MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A single-file, fully offline JSON utility that beautifies, minifies, and validates JSON. Highlights: - Beautify with 2-space, 4-space, or tab indentation - Minify to a single line - Optional recursive key sorting for stable, diffable output - Live validation with pinpoint line/column error locations - Syntax highlighting (keys, strings, numbers, booleans, null) - Stats: line count, character count, nesting depth, key count - Copy input/output, sample data, and localStorage-backed persistence Follows the Hillnote design system — azure accent, 24px radii, tokenised colours with full light/dark support via prefers-color-scheme. No network, no eval, no remote assets. Registers the tool in tools.json and bumps catalogVersion to 26. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01YPS7GR91Q3JUr6wx9qG851 --- json-formatter/index.html | 586 ++++++++++++++++++++++++++++++++ screenshots/json-formatter.webp | Bin 0 -> 29706 bytes tools.json | 10 +- 3 files changed, 595 insertions(+), 1 deletion(-) create mode 100644 json-formatter/index.html create mode 100644 screenshots/json-formatter.webp diff --git a/json-formatter/index.html b/json-formatter/index.html new file mode 100644 index 0000000..12c9196 --- /dev/null +++ b/json-formatter/index.html @@ -0,0 +1,586 @@ + + + + + + + JSON Formatter + + + +
+
+
Developer · Formatting
+

JSON Formatter

+

Paste JSON to beautify, minify, or validate it — with pinpoint error locations. Everything runs locally and offline.

+
+ +
+ + + + + + +
+ +
+
+
+ Input + +
+ +
+
+
+ Output + +
+
Formatted JSON appears here.
+
+
+ +
+ Waiting + Type or paste JSON, then hit Beautify. + + Lines 0 + Chars 0 + Depth 0 + Keys 0 + +
+
+ +
Copied
+ + + + diff --git a/screenshots/json-formatter.webp b/screenshots/json-formatter.webp new file mode 100644 index 0000000000000000000000000000000000000000..0b39cfe5de1c3012f83fdb40cd3e8388106734e0 GIT binary patch literal 29706 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 C+5n;e literal 0 HcmV?d00001 diff --git a/tools.json b/tools.json index 777db9a..0871a4b 100644 --- a/tools.json +++ b/tools.json @@ -1,5 +1,5 @@ { - "catalogVersion": 25, + "catalogVersion": 26, "tools": [ { "dir": "color-capture", @@ -248,6 +248,14 @@ "glyph": "🔍", "color": "#7c3aed", "version": 1 + }, + { + "dir": "json-formatter", + "name": "JSON Formatter", + "description": "Beautify, minify, and validate JSON with syntax highlighting and pinpoint error locations — fully offline.", + "glyph": "🧩", + "color": "#0d9488", + "version": 1 } ] } From a8965ce32b5d345008cd03b1418953d0e3801613 Mon Sep 17 00:00:00 2001 From: karthik rk Date: Fri, 7 Aug 2026 21:21:24 +0530 Subject: [PATCH 2/2] removing local storage --- json-formatter/index.html | 7 ------- 1 file changed, 7 deletions(-) diff --git a/json-formatter/index.html b/json-formatter/index.html index 12c9196..511c78f 100644 --- a/json-formatter/index.html +++ b/json-formatter/index.html @@ -365,7 +365,6 @@

JSON Formatter