A web-based WYSIWYG markdown editor for local files or Markdown documents in a GitHub repository.
Built with Milkdown and React CodeMirror for rich-text and source editing.
- Open the online editor and select GitHub in Menu → Settings → Workspace mode.
- Sign in, install the GitHub App for your repository, then select a repository and branch (or create a docs repository). Choose a docs folder and select Use workspace.
- Edit your documents, stage changes, and select Publish staged to commit them to GitHub.
- Download from the latest release artifact.
Download markdown-editor-macos.zip for macOS or markdown-editor-windows.zip for Windows.
-
Unzip the file and run the binary file.
-
In Menu → Settings, select Local under Workspace mode and choose the root folder of your documents.
Tip
On macOS, right-click to open the app.
On Windows, right-click to run the executable as administrator.
- WYSIWYG Editing: Rich markdown editing experience with Milkdown
- Dual Editor Mode: Switch between WYSIWYG and raw markdown (CodeMirror) with real-time sync
- File Operations: Create, rename, copy, move, and delete files and folders directly from the editor
- GitHub Workspaces: Edit repository documents in the browser, stage changes, and publish commits to a selected branch
- Local Git Integration: Commit, push, pull, and manage git changes if your local document root is a git repository
- Local Search: Fast file name and content search across your documents based on ripgrep
- Image Management: Upload and manage images in the selected workspace
# Install dependencies
pnpm installThe project consists of two main components:
- Rust Server (
crates/server): Handles file operations, git sync, and search - React Client (
client): Web UI built with React and TypeScript
Start both components:
pnpm devThis will automatically start the Rust server and React client with hot-reload.
# Build both server and client
pnpm buildFormal release:
pnpm release patch
pnpm release minor
pnpm release majorPre-release:
pnpm release patch --alpha
pnpm release minor --beta
pnpm release major --rc