Releases: poli0981/jsonPrism
Release list
JSONPrism v1.7.2
Native desktop builds for Windows, macOS, and Linux, plus an Android APK (sideload, Android 12+).
Android: download the .apk, then enable "install unknown apps" for your browser/file manager to sideload.
See the CHANGELOG for details.
JSONPrism v1.7.1
Native desktop builds for Windows, macOS, and Linux, plus an Android APK (sideload, Android 12+).
Android: download the .apk, then enable "install unknown apps" for your browser/file manager to sideload.
See the CHANGELOG for details.
JSONPrism v1.7.0
Native desktop builds for Windows, macOS, and Linux, plus an Android APK (sideload, Android 12+).
Android: download the .apk, then enable "install unknown apps" for your browser/file manager to sideload.
See the CHANGELOG for details.
JSONPrism v1.6.1
Build-only patch release — no converter or UI behavior changed.
Changed
- Split the CodeMirror core chunk to clear Vite's 500 kB build warning. Migrated chunking to Rolldown
advancedChunks;cm-core(~614 kB raw) now splits intocm-view(~245 kB, the@codemirror/viewengine) +cm-core(~362 kB);cm-langsunchanged. Same total/gzip bytes — the editor is still lazy-loaded. (#74)
Fixed
- Stopped shipping source maps on the public web build —
.mapfiles are no longer deployed to GitHub Pages. (#72)
Dependencies
- 27 grouped npm minor/patch updates. (#67)
Downloads: Windows (.exe installer / .msi), macOS universal (.dmg, .app.tar.gz), Linux (.deb, .rpm, .AppImage).
JSONPrism v1.6.0
Native desktop builds for Windows, macOS, and Linux.
See the CHANGELOG for what's new.
JSONPrism v1.5.0
Native desktop builds for Windows, macOS, and Linux.
See the CHANGELOG for what's new.
JSONPrism v1.4.3
JSONPrism v1.4.3 — toast close-button fix + tested viewports doc
Patch release for the toast close-button regression reported after v1.4.2: clicking/tapping the × did nothing on both desktop and mobile.
Fixed
- Toast close button (
×) did not dismiss on click or tap. Reading sonner v1.7.4's bundled source, the toast root attachedr.target.setPointerCapture(r.pointerId)unconditionally onpointerdown. Combined with React 19's new container-root event delegation, the pointer capture swallowed the synthetic click event on the close button — so the bundleddismiss()handler never ran. Affected both mouse and touch because PointerEvent is unified. Upgradedsonner^1.7.0→^2.0.7, which rewrote pointer/swipe handling and ships first-class React 19 support. No call-site changes needed — the<Toaster>props andtoast.success/warning/error/infoAPI are compatible between v1 and v2.
Added
docs/tested-viewports.md— the maintainer's manual device test matrix (BlackBerry Z30 / Galaxy S9+ / Pixel 3/4/7 / iPhone SE/12/14 Pro/XR/Pro Max / iPad / BlackBerry PlayBook). Documents Nokia Lumia 520 (320×533) as a known limitation below the recommended 360×640 minimum. README EN + VI link to it.- Touch hit-area expansion on the close button. A
::afterpseudo gives an effective ~36–40px tap target (visible size stays at 20px), plustouch-action: manipulationto drop the 300ms tap delay on touch devices. Defensive — sonner v2 already fixes the underlying click — but a free mobile UX win.
Dependencies
- Bumped
sonner^1.7.0→^2.0.7(MIT).THIRD-PARTY.mdupdated.
Downloads
- Windows —
JSONPrism_1.4.3_x64_en-US.msi(WiX MSI) orJSONPrism_1.4.3_x64-setup.exe(NSIS installer) - macOS (universal — Apple Silicon + Intel) —
JSONPrism_1.4.3_universal.dmgorJSONPrism_universal.app.tar.gz - Linux —
JSONPrism_1.4.3_amd64.AppImage(universal),JSONPrism_1.4.3_amd64.deb(Debian/Ubuntu), orJSONPrism-1.4.3-1.x86_64.rpm(Fedora/RHEL)
Full changelog: CHANGELOG.md.
Try the web build at https://poli0981.github.io/jsonPrism/.
JSONPrism v1.4.2
JSONPrism v1.4.2 — mobile Tabs UI
Patch release for the mobile-viewport overlap reported after v1.4.1: viewports < 400 × 700px showed Input and Output panels overlapping, and below ~500px height the panels were nearly invisible. Root cause was that v1.4.1's grid-rows-2 stack still allotted each panel only half the workspace height — and when the top toolbar wrapped (the 12 FormatPicker chips on narrow viewports) plus chrome ate the rest, each row fell below CodeMirror's minimum rendered height and the panels visually overlapped.
Added
- Tabs UI for Input/Output on mobile (
<md). New shadcnTabsprimitive (@radix-ui/react-tabs). Active tab takes the full workspace height; desktop continues to use the side-by-side grid. Both layouts render in parallel so CodeMirror state (selection, scroll, cursor) survives viewport resize without remounting. - "Unread output" dot on the Output tab when
outputchanges while the user is on the Input tab. Clears when they switch over. No auto-switch — the user controls the flow. - Compact mobile FormatPicker. The 12 chips collapse into a single
Target format: <current>trigger that opens a bottom Sheet with all chips. Saves ~50–80px of toolbar height that the flex-wrap was eating — the underlying cause of the overlap.
Changed
- README EN + VI now disclose: "designed for viewports ≥ 360 × 640; smaller screens still work but may feel cramped". Galaxy S / Pixel-class portrait is the minimum well-supported viewport; iPhone SE 1st gen (320×568) is best-effort.
Dependencies
- Added
@radix-ui/react-tabs(MIT). Listed inTHIRD-PARTY.md.
Downloads
- Windows —
JSONPrism_1.4.2_x64_en-US.msi(WiX MSI) orJSONPrism_1.4.2_x64-setup.exe(NSIS installer) - macOS (universal — Apple Silicon + Intel) —
JSONPrism_1.4.2_universal.dmgorJSONPrism_universal.app.tar.gz - Linux —
JSONPrism_1.4.2_amd64.AppImage(universal),JSONPrism_1.4.2_amd64.deb(Debian/Ubuntu), orJSONPrism-1.4.2-1.x86_64.rpm(Fedora/RHEL)
Full changelog: CHANGELOG.md.
Try the web build at https://poli0981.github.io/jsonPrism/.
JSONPrism v1.4.1
JSONPrism v1.4.1 — mobile fixes
Patch release for three regressions reported on iPhone 14 Pro (real device). iPad and tablets were unaffected.
Fixed
- Header overflowed the viewport on iPhone 14 Pro and other ≤sm phones. The brand wordmark + nav links + language switcher + theme toggle + GitHub icon summed to ~460px and didn't fit the 393px iPhone viewport, forcing horizontal page scroll to reach the right-edge buttons. The
JSONPrismwordmark is now hidden belowsm(640px) — the brand SVG mark alone identifies the app on phones, and the row fits cleanly. - Workspace input/output panels disappearing on short / landscape phones. Two compounding causes:
min-h-[40vh]on each stacked panel (introduced in 1.4.0) summed to 80vh, exceeding available height on short phones; the workspace container'soverflow-hiddenthen clipped the lower panel off-screen. Replaced withgrid-rows-2 md:grid-rows-1so each panel takes exactly half the workspace height share on mobile — always visible, no overflow.h-screen(=100vh) on the Layout root didn't account for iOS Safari's dynamic toolbar; the computed height could exceed the actual visible area after rotating to landscape. Swapped forh-dvh(dynamic viewport height).
Docs
THIRD-PARTY.mdnow lists the five CodeMirror language packs that landed across 1.3.0 + 1.4.0 (@codemirror/lang-yaml,@codemirror/lang-xml,@codemirror/lang-markdown,@codemirror/lang-sql,@codemirror/legacy-modes— all MIT). The file was lagging the actual install set.
Downloads
- Windows —
JSONPrism_1.4.1_x64_en-US.msi(WiX MSI) orJSONPrism_1.4.1_x64-setup.exe(NSIS installer) - macOS (universal — Apple Silicon + Intel) —
JSONPrism_1.4.1_universal.dmgorJSONPrism_universal.app.tar.gz - Linux —
JSONPrism_1.4.1_amd64.AppImage(universal),JSONPrism_1.4.1_amd64.deb(Debian/Ubuntu), orJSONPrism-1.4.1-1.x86_64.rpm(Fedora/RHEL)
Full changelog: CHANGELOG.md.
Try the web build at https://poli0981.github.io/jsonPrism/.
JSONPrism v1.4.0
JSONPrism v1.4.0 — UI/UX polish
Added
- Dynamic placeholders in reverse mode — input and output empty-state copy now name the source/target extension (e.g. "Paste your CSV here…", "Output will appear here once you provide valid YAML.").
- "Multi-target formats" slogan replaces the hard-coded "Eight target formats" in
app.descriptionacross en/vi/ja/zh-CN, so the tagline no longer claims a count that ages with each new format. - Reverse-mode syntax highlight expanded — Markdown, SQL, TOML, and JSONL now render with proper tokens in the input editor. CSV/TSV stay plain (no upstream CodeMirror grammar fits). New deps:
@codemirror/lang-markdown,@codemirror/lang-sql,@codemirror/legacy-modes(TOML, viaStreamLanguage.define). - Social links UI — Footer surfaces Discord (dev community) / X / Bluesky brand icons; About page gains a
Communitysection with all six channels (Discord, X, Bluesky, Mastodon, Telegram, YouTube).SocialIcons.tsxships six inline-SVG brand icons sincelucide-reacthas no brand glyphs. - Mobile responsiveness polish — Header nav stays visible on small viewports, brand wordmark scales down, input/output toolbar buttons collapse to icon-only on mobile (label moves to
aria-label), workspace panels keepmin-h-[40vh]on mobile, Home hero stacks, About + FormatPicker chips compact. No hamburger — the two-link nav doesn't warrant a drawer.
Fixed
- Mousewheel scroll on input editor required a click-to-focus before engaging on some Chromium builds. Root cause:
.cm-scroller's scrollbar was suppressed viascrollbarWidth: 'none'. Switched toscrollbarWidth: 'thin'+ explicitoverflow: 'auto'+ a themed::-webkit-scrollbar. Wheel and PageDown both work cold now.
Changed
- README EN + VI refreshed: slogan synced with the in-app copy, VI README catches up with the EN format table (adds BSON / CBOR / MessagePack rows + the
Reverse (→ JSON)column), tech-stack line bumped from Vite 6 to Vite 8 in both files, and both Readmes gain aCommunitysection mirroring the in-app links.
Tests
- 193/193 unit tests pass — no new tests; this round is editor/CSS/i18n surface that's better verified manually.
Downloads
- Windows —
JSONPrism_1.4.0_x64_en-US.msi(WiX MSI) orJSONPrism_1.4.0_x64-setup.exe(NSIS installer) - macOS (universal — Apple Silicon + Intel) —
JSONPrism_1.4.0_universal.dmgorJSONPrism_universal.app.tar.gz - Linux —
JSONPrism_1.4.0_amd64.AppImage(universal),JSONPrism_1.4.0_amd64.deb(Debian/Ubuntu), orJSONPrism-1.4.0-1.x86_64.rpm(Fedora/RHEL)
Full changelog: CHANGELOG.md.
Try the web build at https://poli0981.github.io/jsonPrism/.