This guide details how to work with the editing workspace, importing flows, exporting tools, and serverless sharing mechanisms in Markdown Viewer (v3.7.4).
The interface is structured into a header section, formatting toolbar, document tabs, and a resizable workspace.
+-----------------------------------------------------------------------+
| App Header (.app-header) |
| [Tab 1] [Tab 2] [Tab 3] [View Modes] [Settings] |
+-----------------------------------------------------------------------+
| Formatting Toolbar (.markdown-format-toolbar) |
| [Bold] [Italic] [Link] [Image] [Table] [Mermaid] [Math] |
+-----------------------------------------------------------------------+
| | |
| Editor Pane (.editor-pane) | Preview Pane (.preview-pane) |
| | |
| [Gutter] # Welcome... | # Welcome... |
| 1 This is markdown | This is markdown. |
| 2 | |
| | |
+-----------------------------------------------------------------------+
| Status Bar |
| Words: 4 Chars: 21 Reading Time: 1 min |
+-----------------------------------------------------------------------+
Markdown Viewer allows you to open and edit multiple documents concurrently.
+ button in the tab header bar.x icon on the tab. Deleting the last tab clears editor content and resets state.localStorage every 500ms when typing, and flushed immediately during beforeunload or visibilitychange lifecycle states.Load files into the workspace using three different paths:
Drag a .md or .markdown text file from your file system and drop it directly onto the editor pane. The contents will overwrite the active tab. A binary safety guard scans the first 8 KB of the file for null bytes (\x00) to block corrupted or binary files.
Click Import in the toolbar, select From files, and choose one or more Markdown files from your system.
https://github.com/owner/repositoryhttps://github.com/owner/repository/tree/main/src/docshttps://github.com/owner/repository/blob/main/README.mdExport options are available in the Export dropdown in the toolbar:
.md)Saves the raw text buffer of the active tab.
.html)Generates a self-contained HTML file. It bundles the compiled Markdown content, highlights code blocks, renders diagrams, and inlines GitHub-markdown styles so the document displays correctly offline.
.pdf)Generates a PDF using jsPDF and html2canvas via an off-screen sandbox. It converts SVG diagrams to rasters, scales oversized elements, and runs a cascade pagination loop to keep headings with their sections and prevent text lines from being cut in half.
[!TIP] For the highest PDF rendering quality, use your browser's built-in Print functionality (
Ctrl+PorCmd+P) and select "Save as PDF".
Configure the workspace layout to fit your current writing context:
| View Mode | Toolbar Icon | Layout Description |
|---|---|---|
| Split View | ⬜⬜ |
Dual-pane side-by-side editing and previewing (Default desktop view). |
| Editor Only | ⬜ |
Single pane showing only the editor for distraction-free writing. |
| Preview Only | ◼ |
Single pane showing only the compiled HTML output for reading. |
Switch themes using the toggle icon in the toolbar:
#0d1117) matching GitHub Dark.Theme variables default to system preferences and are written to the document root class attribute.
When working in Split View, scrolling the editor or preview will automatically update the opposite pane:
requestAnimationFrame to prevent circular updates.Toggle the 📊 Stats view in the toolbar to display:
Create serverless, database-free sharing links using the Share button in the toolbar:
Pako.js (zlib DEFLATE).+ with -, / with _, and removing trailing = padding).http://domain/#share=<payload>.The following shortcut keys are active inside the editor:
| Action | Windows / Linux | macOS |
|---|---|---|
| Export raw Markdown | Ctrl + S |
⌘ + S |
| Copy Rich HTML | Ctrl + C (with no text selected) |
⌘ + C (with no text selected) |
| Toggle Scroll Sync | Ctrl + Shift + S |
⌘ + Shift + S |
| Open a New Tab | Ctrl + T |
⌘ + T |
| Close the Active Tab | Ctrl + W |
⌘ + W |
| Open Find & Replace | Ctrl + F |
⌘ + F |
| Undo Last Edit | Ctrl + Z |
⌘ + Z |
| Redo Last Edit | Ctrl + Shift + Z / Ctrl + Y |
⌘ + Shift + Z / ⌘ + Y |
| Insert Code Block | Ctrl + Shift + C |
⌘ + Shift + C |
| Toggle Fullscreen Editor | F11 |
F11 |
| Insert 2-space Indent | Tab |
Tab |
| Outdent Line | Shift + Tab |
Shift + Tab |