Changelog
All notable changes to the CodePrettify desktop app are documented here.
v1.0.0
Coming Soon
✨ New Features
- Desktop Performance — Moved the desktop app’s pure data-processing work for JSON/JSONL, XML/RSS, and HTML from the WebView into the C# launcher. The launcher now computes formatted text, validation, diagnostics, statistics, navigator items, CSV/table models, diff results, and minimap line data natively and sends compact results back to the web UI. Initial load now requests only the formatting/validation path, while heavier analysis is loaded on demand when the related tool opens.
-
Native Menu Bar — Added a full native Windows
menu bar with File, Edit, View, Tools, and Help menus. The menu
bar themes automatically with dark/light mode.
- File: Open (Ctrl+O), Save As (Ctrl+S), Close Tab (Ctrl+W), Exit
- Edit: Copy Code (Ctrl+Alt+C), Find (Ctrl+F), Go to Line (Ctrl+G)
- View: Toggle Beautify (Ctrl+B), Word Wrap, Line Numbers, Minimap, Floating Toolbar (Ctrl+Alt+T), Zoom In/Out, DevTools (F12)
- Tools: Document Navigator, Table View, Statistics, Diagnostics, Compare with Clipboard (Ctrl+Alt+D), Settings
- Help: About CodePrettify
- Tab Bar — Added a native tab bar for managing multiple open files. Tabs are created when opening files via the menu, toolbar, drag-and-drop, or context menu. Tabs show file names with close buttons, and support hover effects and an active accent line. The tab bar is hidden when no files are open.
- Keyboard Shortcuts — Added Ctrl+O (Open), Ctrl+S (Save As), and Ctrl+W (Close Tab) shortcuts that work across the native menu and web layer.
-
TypeScript Support — Added support for
.ts,.mts, and.ctsfiles. TypeScript files are detected by file extension and MIME type, and are formatted and highlighted using the JavaScript handler. -
HTML Support — Added support for
.htmland.htmfiles with a dedicated HTML handler featuring syntax highlighting, code folding for matched HTML tag pairs, clickable URLs in attribute values, and a custom HTML formatter with void element and raw text element awareness. HTML is enabled by default in the desktop app. Context menu integration includes.htmland.htmon Windows 11. - UI Language Override — Added a language dropdown to the settings modal that lets users override the automatic system locale with any of the 14 supported languages (English, Dansk, Deutsch, Español, Français, Italiano, 日本語, 한국어, Norsk, Português, Русский, Svenska, Tiếng Việt, 中文). Defaults to Auto (system). Changing the language saves the preference and reloads the page with the chosen locale applied to all UI strings.
- Theme Setting — Added a theme dropdown to the settings modal allowing users to switch between Light, Dark, and Auto (system) themes directly from the settings panel.
- CSS Validation Line Numbers — Rewrote the CSS syntax validator to use a stack-based approach that tracks the exact line and column of each unmatched brace, parenthesis, or bracket. The error toast now shows a clickable line number that jumps to the first error. Strings and comments are correctly skipped to avoid false positives.
-
JSONL / NDJSON Support — JSONL files are now
parsed line-by-line and displayed as individual records with
lineNroot paths, preserving the original JSONL structure. All JSON features (collapsible tree, breadcrumb, inspector, table view, CSV export, statistics, diagnostics, code folding) work with JSONL. Validation reports errors per-line. The raw view and original download preserve the JSONL format. - JSON Path Autocomplete — The JSON path query input now offers real-time autocomplete suggestions as you type, with keyboard navigation (Arrow keys, Tab/Enter to accept, Escape to dismiss). Suggestions are derived from the actual document structure.
- JSON Path Validation — The query input highlights in red when the typed path is invalid (index out of range, non-existent key), while allowing partial input as the user is still typing.
- Drag & Drop — Open files by dragging them onto the app window or clicking the file picker.
-
File Handler — When installed, registers as a
handler for
.js,.json,.css,.xml,.rss, and.atomfiles. - Context Menu — On Windows 11, adds “Open with CodePrettify” directly in the File Explorer right-click menu for supported file types.
- Loading Indicator — Shows a spinner while formatting large files, hiding raw content until formatting is complete.
- Offline — Fully functional without an internet connection.
-
Storage Polyfill — Storage and i18n APIs are
polyfilled using
localStorageand fetched locale bundles. - All formatting, highlighting, navigation, and tool features are included.
🐛 Bug Fixes
- Bug Fix (In-Place Drag & Drop Reinit) — Fixed dropping a file onto the middle of an existing desktop tab opening the new file in raw mode. The in-page reinitialization path now resets transient view state before loading the dropped file, so the new document respects the normal prettified/default view flow.
- Bug Fix (Language Setting Persistence) — Fixed the language setting not persisting across page reloads. The reload now waits for the storage write to complete before triggering, preventing a race condition where the old value was read back on reload.
- Bug Fix (HTML Formatter Whitespace) — Fixed the HTML formatter producing extra blank lines when source text between tags contained embedded newlines. Multi-line comments are now split and re-indented per line, and inline text content is properly trimmed before output.
-
Bug Fix (Clickable URLs Not Opening) — Fixed
clickable URLs in HTML and RSS attribute values not opening in
the desktop app. The WebView2 launcher now intercepts
target="_blank"link clicks and opens them in the default system browser. - Bug Fix (Inspector Modal Close) — Fixed the JSON path inspector modal closing when clicking inside it or selecting text. The modal now only closes when clicking outside it, pressing Escape, or clicking the close button.
🔧 Improvements
- UX (Inspector Result Actions) — Added a copy-to-clipboard button on each JSON path query result and reduced the button size for a more compact layout.
