treemd is a modern markdown viewer combining tree-based navigation with interactive TUI.
Launch without flags for interactive mode with dual-pane interface, vim-style navigation, syntax highlighting, and real-time search. Use flags for CLI mode to extract, filter, and analyze markdown structure.
This is free and open source software.
Features include:
- Interactive TUI:
- Dual-pane interface – Navigate outline while viewing content.
- Interactive mode – Navigate, edit, and interact with all markdown elements (tables, checkboxes, links, code blocks).
- Table navigation & editing – Navigate cells with vim keys (hjkl), edit cell content in-place, copy cells/rows/tables.
- Checkbox toggling – Toggle task list items with instant file updates.
- Live editing – Edit files in default editor with auto-reload (respects $VISUAL/$EDITOR).
- Link following – Follow markdown links with visual popup, supports anchor/file/wikilink/external URLs.
- Navigation history – Back/forward between files with full state preservation.
- Syntax highlighting – 50+ languages with full syntect integration.
- Vim-style navigation – j/k, g/G, d/u, p (parent) for efficient browsing.
- Search & filter – Press / to filter headings in real-time.
- Collapsible tree – Expand/collapse sections with Space/Enter.
- Bookmarks – Mark positions (m) and jump back (‘).
- Adjustable layout – Toggle outline visibility, resize panes.
- Rich rendering – Bold, italic, inline code, lists, blockquotes, code blocks, tables with box-drawing characters.
- CLI Mode:
- Query language – jq-like syntax for extracting markdown elements (-q ‘.h2 | text’).
- List headings – Quick overview of document structure.
- Tree visualization – Hierarchical display with box-drawing.
- Section extraction – Extract specific sections by heading name.
- Smart filtering – Filter by text or heading level.
- Multiple formats – Plain text, JSON output.
- Statistics – Count headings by level.
- Stdin support – Pipe markdown content (cat doc.md | treemd -q ‘.h’).
Website: github.com/epistates/treemd
Support:
Developer:
License:

treemd is written in Rust. Learn Rust with our recommended free books and free tutorials.
| Explore Linux | |
|---|---|
| Best Free and Open Source Software - A huge collection of recommended free and open source software covering every major category. | |
| In-depth Linux Software Reviews - Detailed assessments of Linux software covering features, usability and overall quality. | |
| The Big List of Active Linux Distros - An extensive collection of actively developed Linux distributions. | |
| Open Source Alternatives - Alternatives to software and services from Google, Microsoft, Apple, Adobe, IBM, Autodesk, Oracle and others. | |
| Essential Linux System Tools - Indispensable utilities for monitoring, maintaining and managing Linux systems. | |
| Linux Productivity Tools - Useful utilities for improving productivity and streamlining everyday tasks. | |
| Alternatives to Popular CLI Tools - Modern alternatives to familiar command-line utilities supplied with Linux systems. | |
| Awesome Free Linux Game Tools - Tools, utilities and companion software that improve gaming on Linux. | |
| Machine Learning on Linux - Machine learning and deep learning software, self-hosted applications and practical tools. | |
| Saving Money with Linux - Practical ways to reduce electricity consumption and lower computing costs with Linux. | |
| Linux Candy - Fun, entertaining and sometimes delightfully quirky software from the lighter side of Linux. | |

Please read our Comment Policy before commenting.