Releases: PiBOH/multimdreader
Releases · PiBOH/multimdreader
Release list
0.1.1_STABLE5 - Ultimate AST Parsing Control
CHANGELOG
[0.1.1_STABLE5] — 2026-07-01
✨ Ultimate AST Parsing Control & Complete Localization
- Remark AST Explicit Links Enforcement (
remarkExplicitLinksOnly): Implemented a customremarkAST plugin that actively traverses the syntax tree and interceptslinkReferencenodes ([text]) before HTML/hast conversion, transforming them into pure plain text nodes ([text]). This permanently guarantees that only explicit inline links ([text](url)) are rendered as clickable HTML anchor tags (<a>), resolving a major underlying limitation of standard Markdown parsers. - Complete History Controls Localization: Symmetrically added full translations for
Annulla(Undo),Ripeti(Redo), andAnnulla tutto(Reset all) across all 6 supported language JSON files (it,en-GB,en-US,es,fr,de). - Comprehensive README Optimization: Verified and reinforced across all 6 language README files that the tagline and features explicitly designate the application as a Cross-Platform Markdown Reader & Advanced Editor.
- Always-Visible Read/Edit Toggle: Removed the conditional check on the header toggle switch so that
READ (toggle) EDITis always visible. Switching to Edit mode from the welcome screen instantly initializes a cleanUntitled.mdediting workspace. - Reference Link vs Explicit Link Precision: Configured
react-markdownAST component overrides (node.type === 'linkReference') to ensure that shortcut text enclosed in square brackets (e.g.,[TEXT]) is rendered cleanly as plain text, while explicit inline links (e.g.,[TEXT](URL)) are properly rendered as clickable anchor tags (<a>). - Raw HTML Rendering: Integrated
rehype-rawinto the parser pipeline to correctly decode and render raw HTML elements, such as aligned wrapper divs (<div align="center">) and embedded badge images commonly found at the top of professional README files. - Version Updates: Updated all version references to
0.1.1_STABLE5.
[0.1.1_RC4] — 2026-07-01
✨ Masterclass UI Diagnostics & Advanced History Controls
- Render Images Sliding Toggle: Replaced the standalone image toggle button in the header with a fully interactive sliding switch (
NO-IMG [Toggle] IMG), perfectly matching the visual language of the Read/Edit toggle. - Smart Diagnostic Dashboard Notice: Implemented an intelligent status badge (
#changelog-status-badge) indashboard/index.htmlthat dynamically informs the user whether the changelog was loaded live from GitHub (🟢 Live da GitHub), served from browser cache (🟡 Caricato da Cache), or displayed via built-in fallback (🟠 Codice Integrato - Offline). - Download Reliability Statement: Added an explicit disclaimer in the dashboard download section guaranteeing that all asset links strictly point to the latest verified stable release (
0.0.7_STABLE). - Advanced Editing History (Undo/Redo/Reset): In Edit mode, added fully responsive action buttons in the editor tab bar for
↩️ Annulla(Ctrl+Z),↪️ Ripeti(Ctrl+Y), and🔄 Annulla tutto, powered by dedicated undo/redo history state stacks in React. - Keyboard Shortcuts Expansion: Updated the keyboard shortcuts overview in the app sidebar and all 6 language READMEs to include Save (
Ctrl+S), Find (Ctrl+F), Undo (Ctrl+Z), and Redo (Ctrl+Y). - Global Version Alignment: Cleaned up all leftover version strings across READMEs and manifests to
0.1.1_STABLE5.
[0.1.1_RC3] — 2026-07-01
✨ UX, Clean Reading & Rendering Perfection
- Image Rendering Toggle: Added a dedicated button in the header (
IconImage) to toggle the rendering of images on/off (active by default). When disabled, images are replaced with a clean, space-saving plain text badge (🖼️ [Image: alt]), perfect for reading heavy or cluttered Markdown documents. - Sidebar Closed by Default: Changed the initial state of the recent files sidebar to be closed by default (
sidebarOpen = false), offering an immediate distraction-free reading space upon startup. - Bilingual Documentation Shortcuts: Added a beautiful
📚 Documentation (README)section directly within the About dialog, providing instant links to open the project's official README on GitHub in any of the 6 supported languages (it,en-GB,en-US,es,fr,de). - Version Updates: Updated all version references to
0.1.1_RC3.
[0.1.1_RC2] — 2026-07-01
✨ Advanced Editor Suite & Productivity Enhancements
- Markdown Formatting Toolbar (
EditorToolbar): Added an interactive formatting toolbar in Edit mode with quick-insert buttons for Grassetto (**), Corsivo (*), Barrato (~~), Headings (H1-H3), Code Blocks (```), Inline Code, Links, Markdown Tables, Task Checklists (- [ ]), Blockquotes, and Horizontal Rules. Includes intelligent text-selection wrapping and auto-focusing. - Real-Time Document Statistics (
DocumentStats): Embedded a live statistics counter in the file info bar showing total words, characters, lines, and estimated reading time (~200 WPM). - In-Document Search (
SearchBar): Added a full-featured search bar accessible viaCtrl+F/Cmd+For the new🔍 Findtoolbar button. Supports case-insensitive matching, match count badge ("X of Y"), previous/next navigation (Enter/Shift+Enter), and automatic scroll-to-highlight in Edit mode. - Standalone HTML & PDF Export (
ExportMenu): Added an export dropdown menu to the file info bar:- Standalone HTML: Exports the currently rendered Markdown into a self-contained
.htmlfile with embedded GitHub-dark/light CSS and typography styling for offline distribution. - Print / PDF: Direct integration with
window.print()for clean PDF document generation.
- Standalone HTML: Exports the currently rendered Markdown into a self-contained
- Bidirectional Synchronized Scrolling: Implemented smooth, feedback-loop-free synchronized scrolling between the Markdown editor textarea and the Live Preview pane.
- Symmetric i18n Expansion: Updated all 6 supported language locales (
it,en-US,en-GB,es,fr,de) with full translations for toolbar actions, statistics, search interface, and export options.
[0.1.0_BETA] — 2026-07-01
✨ Major Feature: Markdown Editor Mode
- Read / Edit Mode Sliding Toggle: Added an elegant, sliding toggle switch in the header (
READ (toggle) EDIT) right next to the language selector to switch between viewing and editing modes instantly. - Side-by-Side Editing & Live Preview: When Edit mode is active, the application displays a full-featured side-by-side view with a plain-text Markdown editor on the left and an instantly updated live preview on the right.
- Native Desktop & Browser Saving: Added a
💾 Savebutton to the file info bar (highlighted with an animated teal gradient when there are unsaved changes) and fullCtrl+S/Cmd+Skeyboard shortcut support.- Tauri Desktop: Invokes a new Rust command
save_file_contentto save modifications directly back to the original file on disk. - Browser Demo: Seamlessly generates a clean blob download of the updated Markdown file.
- Tauri Desktop: Invokes a new Rust command
- Translation Updates: Updated all 6 language locales (
it,en-GB,en-US,es,fr,de) with full editing, saving, and shortcut terminology.
0.0.8_BETA4
CHANGELOG
[0.0.8_BETA4] — 2026-06-30
🚀 Windows 7 & Legacy OS Compatibility
- Windows 7 Support: Configured
webviewInstallModetoembedBootstrapperintauri.conf.json. This embeds the WebView2 bootstrapper directly within the NSIS installer, ensuring seamless installation on Windows 7 machines where TLS 1.2 or dynamic bootstrapper downloads might fail. - Windows 7 Native Handling: In Tauri v2, core WebView2 compatibility with Windows 7 operates directly via the embedded bootstrapper without requiring legacy feature flags in
Cargo.toml. - Windows XP Statement: Note that Windows XP cannot be supported by Tauri v2 / WebView2. WebView2 is built on Microsoft Edge / Chromium, which permanently dropped support for Windows XP in 2016 (Chrome 49). Additionally, modern Rust toolchains require Windows 7 as the absolute minimum baseline.
📝 Documentation
- Updated all version references to
0.0.8_BETA4 - Updated
arenaai.mdwith explicit details on Windows 7 compatibility configurations and legacy OS limitations.
0.0.7_STABLE
CHANGELOG
[0.0.7_STABLE] — 2026-06-27
🔧 Bug Fixes
- Fixed file association opening: When installing the program and associating supported extensions (
.md,.txt, etc.), double-clicking a file in the operating system now correctly loads and displays the file contents within the application instead of just opening the welcome screen. - Fixed native Drag & Drop: Dragging and dropping files from the OS file explorer into the desktop application now correctly opens the dropped files.
- Desktop File Associations: Configured native bundle file associations in
tauri.conf.jsonand added%fparameter to Linux desktop entry inPKGBUILD.
📝 Documentation
- Updated all version references to
0.0.7_STABLE - Created
arenaai.mdwith comprehensive developer guidelines and architectural documentation.
0.0.6_STABLE
CHANGELOG
[0.0.6_STABLE] — 2025-06-23
✨ New Features
- Added 32-bit (x86) release workflows for Windows and Linux:
release-windows-x86.yml— buildsi686-pc-windows-msvctarget (installer + portable.exe)release-linux-x86.yml— buildsi686-unknown-linux-gnutarget (.deb,.AppImage, Arch.pkg.tar.zst)
📝 Documentation
- Updated all version references to
0.0.6_STABLE - Dashboard changelog updated with new release entry
- Added translation accuracy notice to all READMEs and dashboard: translations other than Italian may not be 100% accurate
if you didn't find your releases check this file -> https://github.com/PiBOH/multimdreader/blob/9ac39e1aa37c6b117be7da9cc2786b94a7bf629e/.releases/0.0.6_STABLE/assets/artifacts/link.artifacts.md
0.0.5_STABLE
CHANGELOG
[0.0.5_STABLE] — 2025-06-23
✨ New Features
- Added project dashboard page — a beautiful, dark/light-mode landing page for the project deployed to GitHub Pages at
piboh.github.io/multimdreader/dashboard/, featuring:- Hero section with gradient branding and download links
- About section with feature cards
- Download section per platform (Windows, macOS, Linux)
- Supported languages showcase
- Changelog preview
- Keyboard shortcuts reference
- Repository structure diagram
- Sticky navigation with theme toggle
- Created
deploy-pages-dashboard.ymlworkflow — deploys thedashboard/folder to GitHub Pages on changes
🔧 Refactoring
- Renamed
deploy-pages.yml→deploy-pages-demo.yml— deploys the live web app demo to GitHub Pages - Separated dashboard deployment from demo deployment into independent workflows with separate concurrency groups
📝 Documentation
- Updated all 6 READMEs with new badge for
deploy-pages-dashboard.yml - Updated CI/CD section in all READMEs to document both Pages workflows
- Updated all version references to
0.0.5_STABLE
0.0.4_BETA
CHANGELOG
[0.0.4_BETA] — 2025-06-23
🐛 Bug Fixes — CI/CD (Critical)
- Fixed
release.ymlfailing on all platforms —@tauri-apps/cliwas missing frompackage.jsondevDependencies, causingtauri buildto fail on Windows, macOS, and Linux (#28052770409) - Fixed all release workflows still failing —
tauri-action@v0was silently failing; replaced with directnpx tauri buildfor full control and visible error output (#28054215281, #28054228335, #28054238180) - Fixed Rust compilation error
cannot find crate multimdreader_lib—main.rsreferencedmultimdreader_lib::run()but the crate is namedmultimdreader; changed tomultimdreader::run()(#28055357691, #28055369781, #28055379901) - Fixed Rust compilation failures — removed unused Tauri plugins (
tauri-plugin-dialog,tauri-plugin-fs) fromCargo.tomlandlib.rsthat were causing crate version incompatibilities - Fixed
vite-plugin-singlefileconflict with Tauri — removed singlefile plugin (useful for standalone HTML but causes issues with Tauri's asset embedding); Tauri now receives proper separate JS/CSS bundles - Fixed Node.js 20 deprecation — upgraded all workflows to Node.js 22 (Node 20 is deprecated on GitHub Actions runners as of September 2025)
- Fixed
npm cifailures — replaced withnpm installand addedpackage-lock.jsonto.gitignoreso CI generates fresh lock files - Fixed Linux build environment — changed
ubuntu-latesttoubuntu-22.04as recommended by Tauri v2 docs for webkit2gtk compatibility - Fixed macOS matrix
fail-fast— addedfail-fast: falseso Intel failure doesn't cancel Apple Silicon build (and vice versa) - Fixed Arch Linux package build — replaced broken
container:approach withaddnab/docker-run-action@v3for reliable Arch container builds - Fixed release permissions — added
permissions: contents: writeto all release workflows so they can create GitHub releases - Added
libssl-devto Linux system dependencies for complete Tauri build requirements
🔧 Refactoring — CI/CD
- Split
release.ymlinto 3 per-OS workflows for independent builds and clearer failure isolation:release-windows.yml— Windows x64 (installer + portable)release-macos.yml— macOS Intel (x64) + Apple Silicon (aarch64)release-linux.yml— Linux Debian (.deb), AppImage, and Arch (.pkg.tar.zst)
- Replaced
tauri-apps/tauri-action@v0with direct build commands — each workflow now runsnpx tauri builddirectly withsoftprops/action-gh-release@v2for release creation, giving full control over build steps and clear error output - Added explicit frontend build step before Tauri build for better error isolation
- Added
cargo fetchstep to pre-download Rust dependencies for clearer failure diagnostics - Added build output listing step to help debug artifact location issues
🔧 Refactoring — Tauri Backend
- Simplified
lib.rs— removed unused Tauri commands (get_app_version,get_app_name) and plugins, now just creates a window with the frontend - Simplified
Cargo.toml— removedtauri-plugin-dialog,tauri-plugin-fsdependencies; removed"devtools"feature from Tauri - Simplified
capabilities/default.json— onlycore:defaultpermission needed
📦 Dependencies
- Added
@tauri-apps/cli@^2todevDependencies(was missing — root cause of original CI failure) - Removed
vite-plugin-singlefile— incompatible with Tauri's asset embedding - Removed
package-lock.jsonfrom repository — CI generates fresh lock file each time
📝 Documentation
- Updated all 6 READMEs with new per-OS workflow badges and revised CI/CD documentation section
- Updated
package.jsonname fromreact-vite-tailwindtomultimdreader - Added testing notice to all 6 READMEs: only Windows releases have been tested by the author; macOS and Linux builds are provided as-is
0.0.3_ALPHA
Source code only. the release workflow didn't work now.
[0.0.3_ALPHA] — 2025-06-23
✨ New Features
- Code block copy button — hover over any fenced code block to copy its content to clipboard with visual feedback
- Remove individual recent files — hover X button on each recent file in the sidebar to remove it from history
- Keyboard shortcuts panel — reference panel shown in the sidebar footer
- Error notifications — visible inline banner for file read errors and unsupported file format attempts
- Close file button — button in the file info bar to close the current file
- GitHub Pages deployment — new
deploy-pages.ymlworkflow with properVITE_BASEsupport for subpath hosting - Generated app icon —
public/icon.pngwith blue-purple gradient "M" design - Multilingual READMEs — 6 translated READMEs with cross-language navigation:
README.md(🇺🇸 English US)README.en-GB.md(🇬🇧 English UK)README.it.md(🇮🇹 Italiano)README.es.md(🇪🇸 Español)README.de.md(🇩🇪 Deutsch)README.fr.md(🇫🇷 Français)
shortcutsi18n keys — added to all 6 locale files for the keyboard shortcuts panelcloseFilei18n key — added to all 6 locale files for the close file button
🐛 Bug Fixes
- Fixed identical
en-GBanden-USlocales — they were byte-for-byte identical; now properly differentiated (e.g. "dialogue" vs "dialog", "colour" vs "color" where applicable) - Fixed
FileReadermissing error handling — addedonerrorcallback with user-visible error notification (previously, a failed read would silently do nothing) - Fixed
handleFileInputtype — changed from genericReact.ChangeEventtoReact.ChangeEvent<HTMLInputElement>for type safety - Fixed
formatDate()ignoring i18n locale — now usesgetLocaleForDateFormat()to map language codes to proper locale strings (e.g.it→it-IT,de→de-DE) - Fixed hardcoded version in About dialog — replaced inline
"0.0.2"withAPP_VERSIONconstant - Fixed
i18ndetector using default localStorage key — changed tomultimdreader-languagefor namespace consistency - Fixed drag & drop state getting stuck — improved
handleDragLeavewith bounding-rect boundary checking
🔧 Refactoring
- Extracted app constants —
APP_VERSION,APP_AUTHOR,APP_WEBSITE,APP_REPOas module-level constants - Extracted utility functions —
formatFileSize(),formatDate(),getLocaleForDateFormat(),isSupportedFile()as standalone functions - Created inline SVG icon components — 14 icon components replacing any previous approach
- Added
CodeBlockcomponent — dedicated component with copy-to-clipboard functionality - Cleaned up
src/utils/cn.ts— removed unused template utility file
📦 Dependencies
- Added
@tailwindcss/typography— forprosemarkdown rendering classes - Added
i18next,i18next-browser-languagedetector,react-i18next— internationalization framework - Added
react-markdown,remark-gfm,rehype-highlight— Markdown rendering pipeline - Added
highlight.js— syntax highlighting engine withgithub-darktheme
📝 Documentation
- Added
CHANGELOG.md(this file) - Updated all version references from
0.0.2to0.0.3_ALPHA
0.0.2_ALPHA
Source code only. the release workflow didn't work now.
[0.0.2] — 2025-06-22
✨ Initial Public Release
- Markdown file reader with GitHub-style rendering
- Syntax highlighting for code blocks (100+ languages)
- 6 language support: Italiano, English (UK), English (US), Español, Deutsch, Français
- Dark / Light mode with system preference detection
- Recent files sidebar with persistent history
- Drag & drop support for opening files
- GFM support: Tables, task lists, strikethrough, autolinks
- Cross-platform: Windows (.exe), macOS (.dmg), Linux (.deb, .AppImage, .pkg.tar.zst)
- CI/CD:
build.yml(web build),release.yml(desktop releases) - Tauri v2 desktop app (Rust backend)