Desktop Markdown Workspace for Windows
Engineered for distraction-free technical writing, mathematical typesetting, interactive diagrams, and Windows desktop integration.
MarkdownReader is a desktop Markdown application developed for Windows 10 and Windows 11. Built with Electron, React 19, TypeScript, and the Tiptap rich-text editing engine, it combines distraction-free document viewing with a technical editing suite.
The application supports mathematical typesetting via offline-bundled KaTeX, interactive diagrams via Mermaid.js, clean PDF export without user interface bleed, system font discovery, and deep Windows shell integration.
- Zero White-Flash Startup: Inline scripts apply theme and background styles before first paint to prevent flashes in dark and light modes.
- Asynchronous File Operations: High-throughput document streaming powered by Node.js asynchronous filesystem APIs (
fs.promises). - Large Document Optimization: ProseMirror indexing and search highlights are capped and optimized to maintain smooth scrolling and editing on large files.
- Background Task Indicators: Progress indicators in the header and status bar inform the user during heavy file operations and large text processing.
- Support for inline equations (
$E=mc^2$) and display equation blocks ($$\sum_{i=0}^n i$$). - Bundled offline vector fonts (WOFF2 and TTF) for mathematical rendering without network connectivity.
- WYSIWYG equation rendering with automatic Markdown serialization.
- Render flowcharts, sequence diagrams, state machines, Gantt charts, mindmaps, C4 architecture, and entity-relationship diagrams in fenced
mermaidcode blocks. - Dual-Mode Widget: Switch between the rendered SVG diagram and raw source code at any time.
- Color schemes automatically match the active application palette and accent settings.
- Isolated Print Renderer: Print and PDF rendering runs in a separate background renderer to guarantee that editor toolbars, dialogs, and sidebars never appear in exported documents.
- Scaled Paper Preview: Live preview with page format selection (A4, US Letter, A3, Legal, Tabloid), orientation, margin controls, and zoom settings.
- Standalone HTML Export: Export single-file HTML documents with embedded offline stylesheets and typography.
- Windows System Font Discovery: Real-time listing of installed Windows fonts with instantaneous search filtering and hover preview.
- Apply Font to Entire App UI: Optional setting to extend the chosen typeface across all tabs, sidebar tree, toolbars, buttons, and dialogs.
- Pangram Preview: Live interactive preview card displaying the active font, configured font size, and line height.
- Animation Speed Multiplier: Configurable interface transition speeds from 0.25x to 3.0x, or disable animations entirely.
- Theme Palettes and Custom Accents: Choose from preset palettes (Zinc, Cobalt, Emerald, Violet, Rose, Amber) or specify any custom HEX accent.
- Windows Setup Assistant: Automatic prompt on launch checks for missing associations or shortcuts with one-click configuration.
- File Association: Register
.mdand.markdownfile extensions in the Windows Registry with dedicated application icons. - File Explorer Context Menu: Right-click context actions to "Edit with MarkdownReader" on files and "Open Folder in MarkdownReader" on directories.
- Start Menu and Desktop Shortcuts: Automatic deployment of high-resolution shortcuts to the Windows Start Menu and Desktop.
- Application User Model ID: Registered as
com.adamk.markdownreaderfor taskbar pinning, window grouping, and system notification handling. - Frameless Titlebar: Custom header with double-click maximize/restore, window snapping support, and minimize/maximize/close controls.
- Direct Screenshot Pasting: Pressing
Ctrl+Vpastes clipboard images directly into the active document, saving the file to./assets/with relative Markdown paths. - Drag-and-Drop Files: Dragging local images into the editor copies them into the document asset directory.
- Fullscreen Lightbox: Zoom towards the mouse cursor and pan using middle-click to inspect diagrams and images.
- Smart Mode: Automatically opens external Markdown files in Reading Mode and newly created or edited files in Editing Mode.
- Configurable Default: Option to enforce Always Reading, Always Editing, or Smart Mode via Settings.
- Go to the Releases page.
- Download
MarkdownReader-v2.0.3-win32-x64.zip. - Extract the archive and launch
MarkdownReader.exe.
When launched for the first time, MarkdownReader displays an integration assistant in the bottom-right corner. Click "Fix All & Apply" to configure .md file associations, create Start Menu shortcuts, and enable Explorer context menu actions. These options can also be adjusted under Settings (Ctrl+,) > Windows.
| Shortcut | Action | Description |
|---|---|---|
| Ctrl + N | New Document | Opens a new blank document tab |
| Ctrl + O | Open File | Select and open a local Markdown file |
| Ctrl + S | Save File | Save the active document |
| Ctrl + Shift + S | Save As | Save document with a new file path |
| Ctrl + W | Close Tab | Close the active document tab |
| Ctrl + E | Toggle Mode | Switch between Reading and Editing modes |
| Ctrl + P | Export Studio | Open the PDF and Print export dialog |
| Ctrl + , | Settings | Open application configuration |
| Ctrl + F | Find and Replace | Open search drawer |
| Ctrl + </kbd> | Toggle Sidebar | Show or hide the file explorer sidebar |
| Ctrl + Shift + L | Toggle Outline | Show or hide the document headings outline |
| Ctrl + B | Bold | Toggle bold styling on selection |
| Ctrl + I | Italic | Toggle italic styling on selection |
| Ctrl + K | Insert Link | Insert or edit a hyperlink |
- Windows 10 or Windows 11 (64-bit)
- Node.js version 18.0.0 or higher
- npm version 9.0.0 or higher
# Clone the repository
git clone https://github.com/lapisecek/MarkdownReader.git
cd MarkdownReader
# Install dependencies
npm install
# Start Vite development server and Electron concurrently
npm run electron:dev# Compile frontend, package app.asar, build executable, create release zip,
# and register Windows Start Menu shortcut
npm run electron:buildGenerated outputs:
dist-electron/MarkdownReader-win32-x64/dist-electron/win-unpacked/dist-electron/MarkdownReader-v2.0.3-win32-x64.zip
MarkdownReader follows Electron security guidelines:
- Renderer Isolation:
contextIsolation: trueis enabled across all windows. - Node Integration Disabled:
nodeIntegration: falsein all renderer processes. - Secure Preload Bridge: Inter-process communication runs exclusively through typed channels defined in
preload.cjs. - Isolated Background Print Worker: Document printing is handled by an ephemeral background window without access to application state.
This project is licensed under the MIT License. See the LICENSE file for the full text.