mdhero

vaibhav-kakde-inMIT活跃维护

一款轻量原生 Markdown 阅读器兼编辑器,安装包仅约 8MB,支持 macOS、Windows 和 Linux,内置 KaTeX 公式与 Mermaid 图表渲染。

A beautiful, native Markdown viewer and lightweight editor for macOS, Windows and Linux. ~8MB, free, open source.

v0.2.10发布于 2026-09-13 19:56 UTC347star +8 / 7 天39fork同步于 2026-11-11 05:56 UTC

怎么上手

由 README 提炼,执行前请确认
pnpm install
pnpm tauri dev
硬件要求按 README 说明

README 未说明硬件要求;支持 macOS(Apple Silicon)、Windows(x64/ARM64)、Linux(x64/arm64)

支持 Apple Silicon
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

跨平台原生 Markdown 阅读器与轻量编辑器,约 8MB,本地渲染不上传文件

一款轻量原生 Markdown 阅读器兼编辑器,安装包仅约 8MB,支持 macOS、Windows 和 Linux,内置 KaTeX 公式与 Mermaid 图表渲染。

核心能力

  • 用 KaTeX 渲染公式、Mermaid 渲染流程图
  • highlight.js 支持 25+ 语言语法高亮
  • Cmd+E 切换编辑模式,Cmd+S 写回磁盘
  • 多标签页、目录侧栏、Cmd+F 搜索与 Vim 键位
  • 监听文件变化,VS Code 保存后自动重载

容易踩的坑

从源码构建需要 Node 22+、Rust stable、pnpm 10+;开发模式占用 1420 端口,残留进程需手动杀掉;macOS 仅提供 Apple Silicon 的 dmg 包

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v0.2.10
  1. v0.2.10MDHero v0.2.10最新正式版2026-09-13 · 2026-09-13 19:56 UTC

    ✨ New

    • Quick Look on macOS. Select a .md file in Finder and press Space to see it rendered — headings, tables, code highlighting, math and diagrams — instead of raw text. Works without opening MDHero. (#88 — thanks @miszterx; #115, #117)
    • Line numbers in the raw markdown view, matching the editor, and they stay aligned when you print. (#110, #114 — thanks @anandghegde; #118)
    • The table-of-contents sidebar is resizable. Drag its edge, or focus the divider and use the arrow keys; the width is remembered between sessions. (#108 — thanks @dahuangfeng123; #111)

    🔒 Security and trust

    • The macOS .dmg is now notarized and stapled. Previous releases were signed but not notarized, so macOS showed a warning on first open and the download could be blocked outright. It now opens cleanly with no Gatekeeper prompt. (#116, #119)
    • Links to files now open only for an allow-listed set of types — PDFs, common images, .txt, .heic, .avif and .mp4. Previously a link could hand any path to the operating system's opener. (#112 — thanks https://github.com/feberbo)
    • Dependencies refreshed. Every critical and high advisory is closed; what remains is low and medium in build-time tooling. (#120)

    🐛 Fixes

    • Files saved as "UTF-8 with BOM" render correctly. A file from Windows Notepad (and many other tools) lost its first heading — or its whole frontmatter block, which also quietly disabled Marp presentation mode. (#122 — thanks @DrorHarari; #124)
    • The raw view's line-number gutter no longer drifts out of alignment when printing. (#118)

    Install

    • macOS (Apple Silicon): download the .dmg — this is the first release that opens without a Gatekeeper warning
    • Windows (x64 or ARM64): the .msi installer or -setup.exe (NSIS) — pick the x64 or arm64 file for your machine
    • Linux (x64 or arm64): the .deb (Debian/Ubuntu), .rpm (Fedora/openSUSE) or .AppImage (any distro)

    Existing installs will offer this update in-app.

    Quick Look needs one extra step on first use: open MDHero once after installing so macOS registers the extension. If Space still shows raw text, enable MDHero under System Settings → General → Login Items & Extensions → Quick Look.

    Full changelog: v0.2.9...v0.2.10

  2. v0.2.9MDHero v0.2.92026-09-06 · 2026-09-06 18:30 UTC
    查看更新说明

    ✨ New

    • Live reload for every open tab. Edit a file in another editor and its tab updates even in the background; the document on screen is only ever repainted for the tab you are looking at. If a file changes on disk while you have unsaved edits in it, your edits are kept, the tab shows ⟳, and Save asks before overwriting. (#97, #106)
    • Tabs come back after a restart — same files, same order, same active tab; files that no longer exist are skipped. Off switch in Settings → Behavior. (#72, #102)
    • Split mode scrolls in sync. Scroll either the editor or the preview and the other follows; typing keeps both panes on the same section. (#74, #105)
    • File › Print with Cmd+P / Ctrl+P, opening the native print dialog — print to paper or to PDF from the rendered view. (#89, #103)
    • New document — start an empty markdown file from the home screen or the + tab and pick its location on first save. (#63, #65)
    • mdhero:// links — open local files from other apps via the mdhero://open?path=… URI scheme. (#60, #61)
    • Right-to-left text. Arabic, Hebrew and Persian paragraphs, headings, lists and table cells render in their own direction, and <div dir="rtl"> / <div dir="ltr"> wrapper lines are honoured, including the case where a paragraph starts with a Latin word or number. (#64, #66, #95, #104)

    🖥️ Platforms

    • Linux builds: .deb, .rpm and .AppImage, x64 and arm64. (#75 — thanks @AghastyGD; #80 — thanks @arfshl)
    • Windows on ARM (arm64 .msi and -setup.exe). (#79 — thanks @arfshl)
    • Windows fixes: local images and relative links now resolve on Windows; the Plans list is no longer empty there. (#76, #90 — thanks @hdo-projects, and @tuzumkuru and @Matis777 for the diagnoses)
    • Linux menu: the Window menu no longer opens empty. (#98)

    🐛 Fixes

    • Live reload kept working only for the first tab you opened; switching tabs silently stopped it. (#68, #69 — thanks @feberbo)
    • Closing the last tab left the watcher running, so an external edit could paint a closed document over the home screen. (#91 — thanks @hdo-projects)
    • File › Close Tab was a dead menu item. (#92 — thanks @hdo-projects)
    • Dark theme: every syntax-highlighting token class now has a readable colour. (#67, #87)
    • Keyboard hints in the UI say Ctrl on Windows and Linux instead of Cmd. (#98)
    • The in-app updater and About dialog point at the current repository. (#98)

    🔒 Hardening

    • Diagram rendering, the app's Content-Security-Policy and the file read/write paths were tightened after a private security review. No exploit was found against v0.2.8; these close the gaps that made one possible. (#107)
    • Local images are now limited to the document's own folder tree, its git checkout, or a folder you pinned. An image referenced from outside that shows as broken until you pin its folder. (#101)

    ⚙️ Under the hood

    • The unit and Rust test suites run in CI on every push and PR (#93 — thanks @hdo-projects), the type check is blocking (#99), and all actions run on Node 24 (#99).

    Install

    • macOS (Apple Silicon): download the .dmg
    • Windows (x64 or ARM64): download the .msi installer or -setup.exe (NSIS) — pick the x64 or arm64 file for your machine
    • Linux (x64 or arm64): download the .deb (Debian/Ubuntu), .rpm (Fedora/openSUSE) or .AppImage (any distro) — amd64/x86_64 or arm64/aarch64

    Existing macOS and Windows installs will offer this update in-app.

    🔏 Code signing

    macOS builds are signed with an Apple Developer ID and notarised by Apple. Windows builds are not yet code-signed, so Windows SmartScreen may warn that the publisher is unrecognised, and Microsoft Defender's machine-learning heuristics have flagged the installer as Trojan:Win32/Wacatac.B!ml. That detection is a false positive: the !ml suffix denotes a heuristic classifier rather than a match against known malware, and it fires on installers that are unsigned and have little downloa

  3. v0.2.8MDHero v0.2.82026-08-02 · 2026-08-02 18:24 UTC
    查看更新说明

    ✨ New

    • View · Split · Edit mode switcher — a centered segmented control replaces the edit button. The new Split mode shows the editor and a live preview side by side. (#19, #59)
    • Marp presentation mode — open a marp: true document as a native slideshow with arrow / Space / Home / End navigation and optional pagination. No Marp CLI needed. (#44)
    • Editor line numbers — a wrap-aware line-number gutter with a current-line highlight; on by default, toggleable in Settings → Editor. (#53)
    • Copy Path — right-click a tab to copy its absolute file path. (#50, #51 — thanks @Rmohid)
    • Tab-switching shortcuts — native Ctrl+Tab / Ctrl+PageUp / Ctrl+PageDown on Windows/Linux and Cmd+Shift+[ / Cmd+Shift+] on macOS. (#39 — thanks @rxwen)
    • Middle-click a tab to close it. (#46)

    🐛 Fixes

    • No more silent data loss — MDHero now warns before discarding unsaved changes when closing a tab or quitting the app. (#49, #54)
    • Empty markdown files open correctly — an empty .md opens straight into the editor instead of bouncing to the home screen. (#52)
    • Blockquotes no longer get injected " quotation glyphs. (#45)

    Install

    • macOS (Apple Silicon): download MDHero_0.2.8_aarch64.dmg
    • Windows: download the .msi installer or .exe (NSIS)
  4. v0.2.7MDHero v0.2.72026-07-07 · 2026-07-07 17:07 UTC
    查看更新说明

    ✨ New

    • Find works everywhere — Cmd+F now searches, highlights, and cycles matches in edit and raw views, not just the rendered view (#33, thanks @NaluTripician)
    • Viewport width toggle — flip between Comfortable and Wide reading widths from the toolbar or Reading Preferences (#38, #41)
    • Open local links in-app — click a relative link to another .md and it opens in a new tab; non-markdown files hand off to your OS default app (#30)
    • Home tab & brand refresh — MDHero identity in the toolbar and home hero, unified list rows, a uniform card grid for recents / plans / folders, and grouped toolbar controls (#43)

    🐛 Fixes

    • Remembers window size & position across launches (#40, reported by @mashakos)
    • macOS Window menu — restores window-tiling and fullscreen keyboard shortcuts (#34)
    • Local images in markdown now render — relative-path images work, including files outside your home folder (#23, #31, thanks @rxwen)
    • Content stays centered when the table-of-contents sidebar is open (#29)
    • Smoother vim j / k scrolling (#25)
    • Accurate scroll position when switching between rendered, raw, and edit modes (#21)

    🙌 Thanks

    @NaluTripician, @rxwen, @mashakos — and everyone who filed issues this cycle.

    Install

    • macOS (Apple Silicon): download MDHero_0.2.7_aarch64.dmg
    • Windows: download MDHero_0.2.7_x64_en-US.msi or MDHero_0.2.7_x64-setup.exe

    First launch: on macOS, right-click the app → Open to get past the unsigned-app warning (or run xattr -cr /Applications/MDHero.app). On Windows, SmartScreen → More info → Run anyway.

  5. v0.2.6MDHero v0.2.62026-06-08 · 2026-06-08 19:10 UTC
    查看更新说明

    🚀 MDHero now updates itself

    When a new version is out, click Update now in the update banner — MDHero downloads it, verifies the signature, installs, and relaunches. No more hunting for a download link (macOS + Windows).

    This is the last update you'll need to install by hand. From 0.2.6 onward, updates are in-app.

    ✨ Also in this release

    • In-app About dialog — cross-platform, replaces the native macOS-only one (#18, thanks @pushkarchoudhari)
    • Fix: Settings dialog no longer scrolls the page behind it (#16, thanks @tejasnilangekar111-maker)

    Install

    • macOS (Apple Silicon): download MDHero_0.2.6_aarch64.dmg
    • Windows: download MDHero_0.2.6_x64_en-US.msi or MDHero_0.2.6_x64-setup.exe

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    GitHub Stars Downloads License macOS Windows Linux Built with Tauri

    Download · Website · Discussions

    Open local .md files, paste AI-generated markdown, or fetch from any public URL — and read or edit it the way it was meant to be.


    Why MDHero

    Markdown is where developers, writers, and AI live today — READMEs, Claude Code plans, LLM chat exports, notes, documentation. But opening a .md file in a code editor gives you ugly monospace text. Opening a web-based viewer means uploading your files. GitHub renders it beautifully but only if the file is in a repo.

    MDHero is a native app for everything in between. Your files stay local. Rendering is instant. Edit in place when you need to. Works offline. Looks like it belongs on your machine.


    Features

    Reading

    • Beautiful rendering — Apple-inspired typography, light & dark themes
    • Syntax highlighting — 25+ languages via highlight.js
    • Math & diagrams — KaTeX for equations, Mermaid for flowcharts
    • Reader controls — adjust font, size, line height, width
    • Zen mode — distraction-free full-screen reading
    • Print/Export to PDF — File › Print or Cmd/Ctrl+P opens the native print dialog (print to paper or to PDF), with clean print styles

    Editing (v0.2.0)

    • Lightweight in-app editor — Cmd+E flips any local file into edit mode
    • Markdown highlighting — headings, emphasis, links, lists, quotes and code are colored as you type, in light and dark (Settings › Editor to turn it off)
    • Save with Cmd+S — writes back to disk; the file watcher knows it was you and skips the reload
    • Stays where you were — source-line scroll sync keeps your position across viewer ↔ raw ↔ edit
    • Dirty indicator — • in the tab title and toolbar when you have unsaved changes
    • Per-tab edit state — switch tabs and back; your edits are right where you left them

    Navigation

    • Multiple tabs — open many files, drag to reorder, Cmd+1–9 to switch
    • Tabs on the side — move the tabs into a resizable panel on the left, with a file's folder under its name when another open file has the same name
    • Table of Contents — auto-generated sidebar with active heading tracking
    • Search (Cmd+F) — with match highlighting
    • Vim keys — j/k/gg/G/d/u/[/] for keyboard-first navigation
    • Image lightbox — click to zoom, arrow keys for next/prev

    Opening Files

    • Local files — drag-drop, Cmd+O, "Open With" from Finder
    • Pinned folders — quick access to markdown in your favorite directories
    • Claude Code Plans — auto-discovers ~/.claude/plans/
    • Open URL — fetch from GitHub, Gist, GitLab, Bitbucket, or any public URL
    • Paste mode (Cmd+Shift+V) — render LLM output instantly, auto-unescapes \n
    • Recent files — pick up where you left off, with reading progress per file

    Live

    • File watching — edit in VS Code, see updates instantly in MDHero
    • Auto-reload — survives atomic saves (VS Code, vim, etc.)

    Sharing

    • Copy as Rich Text — paste directly into Google Docs, Notion
    • Copy as Markdown — raw source
    • Print / Export PDF — File › Print, Cmd/Ctrl+P, or the toolbar button; print-friendly output

    Screenshots

    Syntax Highlighting

    25+ languages with automatic detection, copy button, and clean typography.

    Math Rendering (KaTeX)

    Render LaTeX equations instantly — from inline math to full block equations and matrices.

    Mermaid Diagrams

    Flowcharts, sequence diagrams, class diagrams, and more — rendered natively.

    Zen Mode

    Distraction-free full-screen reading. Just you and the document.


    Install

    macOS (Apple Silicon): Download .dmg from Releases →

    Windows (x64 or ARM64): Download .msi or -setup.exe from Releases → — pick the x64 or arm64 file for your machine

    Linux (x64 or arm64): Download .deb (Debian/Ubuntu), .rpm (Fedora/openSUSE) or .AppImage (any distro) from Releases → — amd64/x86_64 or arm64/aarch64

    Or build from source (see below).


    Keyboard Shortcuts

    ShortcutAction
    Cmd+OBrowse files
    Cmd+Shift+VPaste markdown
    Cmd+TNew tab (home)
    Cmd+WClose tab (confirms if unsaved edits)
    Cmd+1..9Switch to tab N
    Cmd+FFind in document
    Cmd+EToggle edit mode
    Cmd+SSave edits to disk
    Cmd+UToggle raw markdown view
    Cmd+Shift+FZen mode
    Cmd+= / Cmd+-Zoom in / out
    Ctrl + mouse wheelZoom in / out (Ctrl on every platform)
    Cmd+0Reset zoom
    j / kScroll down / up
    gg / GJump to top / bottom
    [ / ]Previous / next heading
    /Open search

    Cmd → Ctrl on Windows/Linux.


    Development

    pnpm install
    pnpm tauri dev          # Run dev with hot reload
    pnpm tauri build        # Production build (outputs DMG/MSI)
    pnpm check              # TypeScript check
    

    Requirements: Node 22+, Rust stable, pnpm 10+.

    Port 1420 is used for dev. Kill stale processes with lsof -ti:1420 | xargs kill -9.

    Stack


    Privacy

    MDHero runs entirely on your machine.

    • No telemetry. No analytics. No tracking.
    • No account required. Use it anonymously.
    • Your files never leave your computer. Rendering happens locally.
    • Network access is limited to: asking GitHub whether there is a newer release (once per 24h, sending nothing about you; you can turn this off in Settings) and fetching URLs you explicitly paste into the Open URL feature. See SECURITY.md for exactly what each request contains.

    Roadmap

    Coming next:

    • Quick Switcher (Cmd+P fuzzy finder)
    • Folder watch (auto-refresh pinned folder contents)
    • Export to self-contained HTML
    • Presentation mode
    • Compare / diff view

    Contributing

    See CONTRIBUTING.md for setup, guidelines, and how to propose changes.


    License

    MIT © Vaibhav Kakde