@geekbb: 发现一个丝滑的 Markdown 编辑器,专为 AI 聊天上下文管理场景设计。 基于 Tauri + React + TypeScript 构建,跨平台支持 macOS / Windows / Linux。 左侧 CodeMirror 6…
摘要
marka.md is a cross-platform Markdown editor specialized for AI context management, built with Tauri, React, and TypeScript. It features live preview, Vim mode, themes, and a context tray to bundle notes for AI chats like Claude, ChatGPT, and Gemini.
查看缓存全文
缓存时间: 2026/05/27 09:22
发现一个丝滑的 Markdown 编辑器,专为 AI 聊天上下文管理场景设计。
基于 Tauri + React + TypeScript 构建,跨平台支持 macOS / Windows / Linux。
左侧 CodeMirror 6 编辑器,右侧 markdown-it + Shiki + Mermaid 实时预览,支持 8 套主题、Vim 模式、命令面板、文件侧边栏、阅读模式、PDF 导出。
https://github.com/mattenarle10/markamd…
mattenarle10/markamd
Source: https://github.com/mattenarle10/markamd
marka.md
a local markdown editor for the notes you share with ai.
a cross-platform (macOS · Windows · Linux) markdown editor specialized for ai context management. live editor on the left (codemirror 6), rendered preview on the right (markdown-it + shiki + mermaid), and a context tray for staging multiple notes into one AI-ready bundle. minimal chrome, grouped themes (neutral + catppuccin + ai-inspired + crafted), orange octopus mascot. ~10 mb bundle, ~240 mb resident — lean for a tauri app.
built around one loop: collect notes → write → share with ai. nothing leaves your machine until you copy.
works with claude, chatgpt, gemini, your local agent — anywhere that reads plain markdown.
features
- live preview — ~50 ms render, shiki code highlighting (36 langs, lazy-loaded), mermaid diagrams
- grouped themes — mono, mono dark, catppuccin family, crafted palettes, plus AI-inspired Claude / Codex / Gemini / Cursor themes · animated sections + hover-to-preview
- reading mode — ⌘. distraction-free preview with iA-style typography
- editor-only mode — ⌘⇧. hide the preview when you want to focus on writing
- vim mode — opt-in via theme menu · NORMAL/INSERT/VISUAL/REPLACE pill in the status bar
- find — ⌘f works in BOTH editor (codemirror) and reading mode (text-node walker w/ live highlights)
- command palette — ⌘k, fuzzy + grouped
- ide-style sidebar — drag-to-move, right-click rename / new / delete, ⌘⌥Z undo
- session restore — last open file + folder come back on launch
- save as — ⌘⇧s opens save-as dialog (also auto-fallback for untitled buffers)
- markdown extras —
==highlight==(mark),~~strike~~,[ ] / [x]task lists with theme-aware checkboxes - share to ai — ⌘⇧c copies clean markdown to clipboard
- context tray — stage multiple sidebar files, see file/token counts, copy them as one prompt bundle
- export to pdf — visible file-action button + ⌘p
- external file watch — auto-reloads when the file changes outside the app · conflict toast on dirty buffer
- cross-platform auto-update — minisign-signed releases on macOS / Windows / Linux
- window transparency slider — continuous opacity, macOS vibrancy
- platform-aware shortcuts — ⌘ on mac, Ctrl on Windows/Linux, surfaced correctly everywhere
- no autosave — ⌘s commits. trust your fingers, not background daemons.
install
macOS (notarized + auto-updating, universal arch coverage)
- apple silicon (M1/M2/M3/M4): grab
marka.md.dmg→ drag marka.md.app into/Applications→ open. - intel mac: grab
marka.md_intel.dmg→ same install steps.
Windows (10+, x64)
grab marka.md_*-setup.exe → run.
Windows SmartScreen may show “Windows protected your PC”. Click More info → Run anyway. marka.md is free + MIT — we don’t sign Windows builds (paid certs aren’t worth it for a free OSS project). Full source is right here if you’d rather build it yourself.
Linux (x86_64)
three flavors, pick what fits your distro:
- AppImage (works anywhere):
chmod +x marka.md_*.AppImage→ run. self-contained, no install step needed. - .deb (Debian / Ubuntu / Mint / Pop!_OS):
sudo dpkg -i marka.md_*_amd64.deb - .rpm (Fedora / RHEL / Rocky / openSUSE):
sudo dnf install marka.md-*.x86_64.rpm
no signing required on Linux — it’s the freedom platform 🐧
from source
requires bun (or npm), rust toolchain. on macOS: xcode command line tools. on Windows: MSVC build tools (Visual Studio installer → “Desktop development with C++”). on Linux: libwebkit2gtk-4.1-dev libsoup-3.0-dev + friends.
bun install
bun run tauri dev # native window with hmr
bun run tauri build # produces .dmg / .exe / .AppImage / .deb / .rpm under src-tauri/target/release/bundle/
keyboard
shortcuts shown with macOS modifiers below. on Windows / Linux, substitute ⌘ → Ctrl, ⌥ → Alt, ⇧ → Shift.
| key | does |
|---|---|
| ⌘K | command palette |
| ⌘O | open a .md file |
| ⌘⇧O | open a folder of notes |
| ⌘N | new untitled buffer |
| ⌘S | save (manual — no autosave) |
| ⌘⇧S | save as (also auto-fallback for untitled buffers) |
| ⌘B | toggle sidebar |
| ⌘. | toggle reading mode (preview only) |
| ⌘⇧. | toggle editor-only mode (preview hidden) |
| ⌘F | find / replace in editor · or find in reading mode |
| ⌘G | find next match |
| ⌘⌥Z | undo last sidebar file op (move / rename / new / delete) |
| ⌘⇧C | copy markdown to clipboard |
| command palette → copy context bundle | copy the staged context bundle |
| ⌘P | export to pdf (also visible in the top file-action row) |
| ⌃⌘F | toggle fullscreen (macOS) · F11 on Windows/Linux |
| ⌘/ | help overlay |
| esc | close any popup |
stack
| layer | choice |
|---|---|
| shell | tauri 2.11 (rust + webview), macOS universal (arm64 + x86_64) · Windows · Linux |
| frontend | react 19 · vite 7 · typescript 5.9 · bun |
| editor | codemirror 6 + @codemirror/lang-markdown + @codemirror/search · opt-in vim via @replit/codemirror-vim |
| markdown | markdown-it + markdown-it-mark + markdown-it-task-lists + shiki (lazy themes + langs) + mermaid (lazy) |
| icons | lucide-react |
| styling | css variables, no framework |
project structure
src/
├── app.tsx # shell — composes hooks + renders layout
├── components/
│ ├── primitives/ # button, icon, popover, kbd, shortcut, tooltip
│ ├── chrome/ # title-bar, breadcrumb, status-bar, logo
│ ├── editor/ # editor, preview, splitter, reading-find
│ ├── files/ # sidebar, file-tree, folder-node, editable-row, sidebar-search, context-menu
│ └── overlays/ # palette, help, about, welcome, drop, toast
├── hooks/ # use-file-session, use-file-ops, use-update-flow, use-context-menu,
│ # use-overlays, use-notifications, use-shortcuts, use-file-watcher,
│ # use-sync-scroll, use-debounced, use-persisted-state
├── lib/ # markdown, theme, platform, files, commands, pdf-export, updater,
│ # window-drag, storage, bundle, demo
├── styles/ # tokens, globals, per-domain css (chrome/, editor/, files/, overlays/, shared/)
└── assets/mascot/ # in-app sprites
src-tauri/ # rust shell, tauri config, capabilities
.github/workflows/ # release.yml (matrix build) + ci.yml + dependabot
every folder exports its public api via index.ts. path alias @/* resolves to src/*. state lives in cohesive custom hooks under src/hooks/; app.tsx is mostly composition + jsx.
roadmap
per-release detail lives on the changelog (auto-fresh from GitHub releases). high-level:
v1.5:
- context tray — multi-file bundling, ⌘-click to stage, token estimates, copy as one prompt blob
- what’s new toast — first launch after update now points users straight to the changelog
- pdf export polish — cleaner document margins, no browser-added date/time/path headers, and rendered mermaid diagrams
- theme polish — mono / mono dark, animated grouped theme menu, and AI-inspired Claude / Codex / Gemini / Cursor palettes
- code block wrapping — long rendered code lines wrap in preview and PDF export
- macOS file handling — default-handler launches open the selected markdown file reliably
next:
- native/silent PDF generation, so export does not depend on the browser print dialog
- optional richer context bundle presets for agents with stricter prompt formats
contributions welcome — see feedback below to suggest priorities.
privacy
local-first. nothing ever leaves your machine. no telemetry, no analytics, no accounts, no cloud sync. your .md files stay on disk. clipboard transfers happen only when you press ⌘⇧C — and then they’re yours, going wherever you paste them.
see the full privacy notice for the website analytics caveat (vercel speed insights, cookieless).
feedback
ideas, bugs, or just want to say hi?
- structured form (GitHub) — feedback · bug report
- prefer email? → [email protected]
- landing page hub → markamd.vercel.app/feedback
- security issues → SECURITY.md
i read everything. PRs welcome.
support
marka.md is free + MIT, and intends to stay that way. if it saves you time wrangling AI context:
- ⭐ star the repo — biggest single signal
- 🗣️ tell another dev / share it
both appreciated, neither required. 🐙
license
mit · matt enarle (@mattenarle10)
相似文章
@indigox: 强烈推荐 Markdown 专用编辑器 cogito.md!简洁优雅快速,所有项目可以按文件夹组织在左侧导航,能在文件和项目维度调用 Claude Code or Codex 作为 Agent 服务集成,可视化搭建知识库的利器!比 Obs…
cogito.md 是一款简洁优雅的 Markdown 专用编辑器,支持文件夹组织项目,可集成 Claude Code 或 Codex 作为 Agent 服务,适合可视化构建知识库,被认为比 Obsidian 更适合 Agent 工作流。
@geekbb: AI 写出来的技术文档动辄几千字,全在终端里滚,没人愿意看。md2html 让 AI 自动把这些 Markdown 转成带侧边栏目录、图表、时间线、卡片和警告框的 HTML 页面,一个文件就能发给团队看。 https://github.c…
md2html is a tool that converts AI-generated Markdown documents into polished, self-contained HTML pages with sidebar table of contents, diagrams, timelines, and callouts, making them easier to read and share.
@geekbb: 一个专为 AI 编码设计的 macOS 终端,把工作区管理、分屏和 AI agent 启动流程整合到一起。支持横竖分屏,一键启动 Claude Code、Codex、Gemini CLI 等七个 AI agent,右键选中内容直接提交给 …
kooky 是一个专为 AI 编码设计的 macOS 终端,整合工作区管理、分屏和 AI agent 启动流程,支持一键启动多个 AI agent 和右键提交内容。
@AYi_AInotes: 说个可能会被骂的判断, 过去十年我们被 Markdown 宠坏了,以为它就是内容交付的终极形态, 但昨晚翻完 html-anything 这个开源项目,上线 7 天,已经 3.3k 星,我突然想通了一件事,就是 AI 时代输出格式的真正的…
html-anything 是一个开源项目,能将 Markdown、CSV、JSON 等内容通过本地 AI agent 直接生成生产级 HTML,并一键发布到微信、X 等平台。它强调设计约束(如 8px 网格、CJK 字体栈)和零 API Key 的本地运行,被视为 Agent 时代的内容生产操作系统。
MarkUp
MarkUp 是一款允许用户通过视觉提示使用AI编辑网站的工具。