MultiMDReader

🔤 A cross-platform Markdown file reader.
No installation required — just download and run.

v0.1.1_STABLE5

About MultiMDReader

MultiMDReader is a cross-platform Markdown file reader built with Tauri v2, React 19, TypeScript and Tailwind CSS 4. Developed by PiBOH.

Just download the executable for your platform and open any Markdown file — no installation required. Available for Windows, macOS, and Linux (Debian, Arch, and more).

📖

GitHub-style Rendering

Beautiful Markdown rendering with tables, task lists, strikethrough and autolinks.

🎨

Syntax Highlighting

100+ languages supported with highlight.js and a one-click copy button.

🌐

6 Languages

🇮🇹 Italiano · 🇬🇧 English (UK) · 🇺🇸 English (US) · 🇪🇸 Español · 🇩🇪 Deutsch · 🇫🇷 Français

🌙

Dark / Light Mode

System preference detection with manual toggle. Keyboard shortcut Ctrl+D.

📂

Recent Files

Persistent sidebar with up to 20 recent files. Drag & drop to open.

No Installation

Download and run. .exe, .dmg, .deb, .AppImage, .pkg.tar.zst.

Features

Read Markdown files with beautiful, GitHub-style rendering
Syntax highlighting for code blocks (100+ languages)
6 languages supported with automatic detection
⚠️ Translations other than Italian may not be 100% accurate
Dark / Light mode with system preference detection
Recent files sidebar with persistent history (localStorage)
Drag & drop support for opening files
GFM support: Tables, task lists, strikethrough, autolinks
Cross-platform: Windows, macOS, Linux
Copy code button on every code block
Keyboard shortcuts: Ctrl+O, Ctrl+B, Ctrl+D, Escape

⚠️ Testing notice: Only Windows releases have been tested by the author. macOS and Linux builds are provided as-is.

Download

Current version: 0.1.1_STABLE5 · The links below strictly point to the latest official stable release on GitHub, ensuring you always download a thoroughly tested and reliable package.

🪟

Windows

Installer: MultiMDReader_*_x64-setup.exe

Portable: multimdreader.exe — no install needed

⬇ Download for Windows

🍎

macOS

Intel: MultiMDReader_*_x64.dmg

Apple Silicon: MultiMDReader_*_aarch64.dmg

⬇ Download for macOS

🐧

Linux

Debian: .deb · All distros: .AppImage · Arch: .pkg.tar.zst

⬇ Download for Linux

📋 View all releases →

Supported Languages

MultiMDReader speaks your language. The interface is fully translated in 6 languages:

🇮🇹 Italiano
🇬🇧 English (UK)
🇺🇸 English (US)
🇪🇸 Español
🇩🇪 Deutsch
🇫🇷 Français

The language is automatically detected from your system settings and can be changed at any time from the app.

Changelog

[0.1.1_STABLE5]

  • Remark AST Explicit Links Enforcement: Custom AST plugin (`remarkExplicitLinksOnly`) permanently intercepts `[text]` reference links before HTML conversion, converting them to plain text while preserving explicit `[text](url)` links
  • Complete History Controls Localization: Added full translations for Undo/Redo/Reset across all 6 supported languages
  • Comprehensive README Optimization: Explicitly verified and updated all 6 language READMEs to state the app is a Cross-Platform Markdown Reader & Advanced Editor
  • Updated all version references to 0.1.1_STABLE5

[0.1.1_RC4]

  • Render Images Sliding Toggle: Replaced standalone toggle button with sliding switch (`NO-IMG [Toggle] IMG`)
  • Smart Diagnostic Dashboard Notice: `#changelog-status-badge` dynamically reports live GitHub fetch vs cache vs hardcoded fallback
  • Download Reliability Statement: Explicitly clarified all links point strictly to verified stable release `0.0.7_STABLE`
  • Advanced Editing History: Added Undo (`Ctrl+Z`), Redo (`Ctrl+Y`), and Reset All action buttons with dedicated React history stacks
  • Updated keyboard shortcuts in app sidebar and all READMEs
  • Updated all version references to 0.1.1_RC4

[0.1.1_RC3]

  • Image Rendering Toggle: Added header button (`IconImage`) to toggle image rendering on/off (active by default). Replaces images with clean plain text badges when off
  • Sidebar Closed by Default: Recent files sidebar starts closed (`sidebarOpen = false`) for immediate distraction-free reading
  • Bilingual Documentation Shortcuts: Added direct links in About dialog to open READMEs in all 6 supported languages
  • Updated all version references to 0.1.1_RC3

[0.1.1_RC2]

  • Advanced Editor Suite: Added formatting toolbar (`EditorToolbar`), live document statistics (`DocumentStats`), full search bar with Ctrl+F (`SearchBar`), and standalone HTML/PDF export (`ExportMenu`)
  • Bidirectional Synchronized Scrolling between editor and live preview
  • Symmetric i18n expansion for all 6 supported languages
  • Updated all version references to 0.1.1_RC2

[0.1.1_RC1]

  • Always-Visible Read/Edit Toggle: Switching to Edit mode from welcome screen initializes a clean `Untitled.md` workspace
  • Reference Link vs Explicit Link Precision: `[TEXT]` renders as plain text, `[TEXT](URL)` renders as clickable link
  • Raw HTML Rendering: Added `rehype-raw` to correctly decode `
    ` and badge images in READMEs
  • Updated all version references to 0.1.1_STABLE5
  • [0.1.0_BETA]

    • Major Feature: Markdown Editor Mode with side-by-side live preview
    • Added sliding toggle switch in header (`READ (toggle) EDIT`)
    • Added native desktop saving to disk via Tauri Rust backend (`save_file_content`)
    • Added browser fallback saving via clean blob download
    • Full `Ctrl+S` / `Cmd+S` keyboard shortcut support
    • Updated all version references to 0.1.0_BETA

    [0.0.8_BETA5]

    • Created bilingual English (`bug_report-en.yml`) and Italian (`bug_report-it.yml`) GitHub issue templates
    • Implemented dynamic live changelog fetcher in the dashboard
    • Added smart cache detection toast banner to notify users of cached views
    • Replaced static 'M' with dynamic logo image pulling directly from GitHub
    • Updated all version references to 0.0.8_BETA5

    [0.0.8_BETA4]

    • Windows 7 compatibility support: set webviewInstallMode to embedBootstrapper in tauri.conf.json
    • Tauri v2 native Windows 7 support via embedded bootstrapper (legacy feature flag removed)
    • Clarified Windows XP legacy engine limitations (Chromium/WebView2 minimum requirement is Windows 7)
    • Updated all version references to 0.0.8_BETA4

    [0.0.7_STABLE]

    • Fixed file association opening: double-clicking an associated file in the OS now correctly opens and loads the file contents in the app
    • Fixed native OS Drag & Drop functionality in the desktop app
    • Configured native bundle file associations in tauri.conf.json
    • Added %f parameter to Linux desktop entry in PKGBUILD
    • Updated all version references to 0.0.7_STABLE
    • Created arenaai.md developer guide

    [0.0.6_STABLE]

    • Added 32-bit (x86) release workflows for Windows and Linux
    • macOS 32-bit not available (Apple dropped 32-bit support in 2019)
    • Updated all version references to 0.0.6_STABLE

    [0.0.5_STABLE]

    • Added project dashboard page deployed to GitHub Pages
    • Renamed deploy-pages.ymldeploy-pages-demo.yml
    • Created deploy-pages-dashboard.yml for the dashboard
    • Updated all version references to 0.0.5_STABLE

    [0.0.4_BETA]

    • Fixed multimdreader_libmultimdreader crate name in main.rs
    • Replaced tauri-action@v0 with direct npx tauri build
    • Removed unused Tauri plugins and simplified Rust backend
    • Removed vite-plugin-singlefile (incompatible with Tauri)
    • Split release workflow into per-OS workflows

    [0.0.3_ALPHA]

    • Code block copy button, remove individual recent files
    • Fixed identical en-GB/en-US locales, FileReader error handling
    • Multilingual READMEs (6 languages)
    • i18n locale-aware date formatting

    [0.0.2]

    • Initial public release with Tauri v2

📋 View full changelog on GitHub →

Keyboard Shortcuts

ShortcutAction
Ctrl+OOpen file
Ctrl+BToggle sidebar
Ctrl+DToggle dark / light mode
EscClose dialog

Repository Structure

Auto-generated from the project layout.

Source

multimdreader/
├── .github/workflows/
│   ├── deploy-pages-demo.yml
│   ├── deploy-pages-dashboard.yml
│   ├── release-windows.yml
│   ├── release-macos.yml
│   └── release-linux.yml
├── dashboard/
│   ├── index.html
│   └── style.css
├── public/
│   └── icon.png
├── src/
│   ├── App.tsx
│   ├── main.tsx
│   ├── index.css
│   └── i18n/
│       ├── index.ts
│       └── locales/
│           ├── it.json
│           ├── en-GB.json
│           ├── en-US.json
│           ├── es.json
│           ├── de.json
│           └── fr.json
├── src-tauri/
│   ├── Cargo.toml
│   ├── build.rs
│   ├── tauri.conf.json
│   ├── capabilities/default.json
│   └── src/
│       ├── main.rs
│       └── lib.rs
├── CHANGELOG.md
├── LICENSE
├── PKGBUILD
├── README.md (+ 5 translations)
├── index.html
├── package.json
├── tsconfig.json
└── vite.config.ts

Tech Stack

Frontend:
  · React 19
  · TypeScript
  · Tailwind CSS 4

Markdown:
  · react-markdown
  · remark-gfm
  · rehype-highlight
  · highlight.js

i18n:
  · i18next
  · react-i18next
  · i18next-browser-languagedetector

Desktop:
  · Tauri v2 (Rust)

Build:
  · Vite
  · GitHub Actions
ℹ️ Cached View
You may be viewing a cached version of this page. Press Ctrl+F5 to ensure latest data.