Minimal zen markdown editor with collaborative notebooks
npm install mrmd-electronMarkdown notebooks with live code execution. Write, run, and collaborate — all in plain .md files.
< >
---
MRMD is a desktop app that turns markdown files into executable notebooks. Think Jupyter, but:
- Plain markdown — Your documents are standard .md files. No JSON, no lock-in.
``markdownMy Analysis
Some notes about the data...
`python`
import pandas as pd
df = pd.read_csv("data.csv")
df.describe()
Results appear inline, saved to the file.
`
---
to edit with AI. Describe what you want, and the AI modifies your code or text.$3
Share your notebook URL. Changes sync instantly between all connected users.$3
Embed interactive terminals with ``term blocks. Full PTY support.---
Get the latest release for your platform:
| Platform | Download |
|----------|----------|
| Linux | AppImage · .deb |
| macOS | Intel .dmg · Apple Silicon .dmg |
| Windows | Installer · Portable |
- Python 3.11+ with uv package manager
- Node.js 18+ (bundled in most cases)
MRMD automatically downloads required Python packages (mrmd-python, mrmd-ai, etc.) on first run.
---
1. Download and install MRMD for your platform
2. Open a folder containing .md files (or create a new one)
3. Write code blocks using standard markdown fences:
```markdown`
python`
print("Hello, MRMD!")
``
4. Run code by clicking the play button or pressing Ctrl+Enter
5. See results appear inline, saved directly to your markdown file
---
| Action | Shortcut |
|--------|----------|
| Run cell | Ctrl+Enter |Shift+Enter
| Run cell and advance | |Ctrl+K
| AI edit | |Ctrl+P
| Search File or Create Files or Project | |
---
| Language | Runtime | Status |
|----------|---------|--------|
| Python | mrmd-python | Full support |mrmd-js
| JavaScript | | Full support |mrmd-bash
| Bash | | Full support |mrmd-pty
| Terminal | | Interactive PTY |mrmd-r
| R | | Coming soon |mrmd-julia
| Julia | | Coming soon |
---
MRMD uses a modular architecture:
``
┌─────────────────────────────────────────────────────────┐
│ MRMD Electron │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ mrmd-editor │ │ mrmd-sync │ │ mrmd-monitor│ │
│ │ (UI) │ │ (sync) │ │ (execution) │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
└─────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────┐
│ Python Runtimes │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ mrmd-python │ │ mrmd-bash │ │ mrmd-ai │ │
│ │ (code exec) │ │ (shell) │ │ (AI assist) │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
└─────────────────────────────────────────────────────────┘
- mrmd-editor — CodeMirror-based editor with markdown rendering
- mrmd-sync — Yjs CRDT server for real-time collaboration
- mrmd-monitor — Headless execution daemon (survives app restart)
- mrmd-python — Python runtime with streaming output
- mrmd-bash — Bash runtime for shell blocks
- mrmd-ai — AI programs for Ctrl+K editing and completions
---
`bashInstall uv (Python package manager)
curl -LsSf https://astral.sh/uv/install.sh | sh
$3
`bash
Install dependencies
npm installBundle sibling packages
npm run bundleStart in development mode
npm start
`$3
`bash
Build for current platform
npm run buildBuild for specific platform
npm run build:linux
npm run build:mac
npm run build:win
`---
Related Packages
| Package | Description | Registry |
|---------|-------------|----------|
| mrmd-editor | CodeMirror editor component | npm |
| mrmd-python | Python execution runtime | PyPI |
| mrmd-ai | AI editing programs | PyPI |
| mrmd-bash | Bash execution runtime | PyPI |
| mrmd-sync | Yjs sync server | npm |
---
Contributing
Contributions are welcome! Please read our contributing guidelines before submitting PRs.
1. Fork the repository
2. Create a feature branch (
git checkout -b feature/amazing-feature)
3. Commit your changes (git commit -m 'Add amazing feature')
4. Push to the branch (git push origin feature/amazing-feature`)---
MIT License. See LICENSE for details.
---
MRMD — Markdown that runs.