Files

treemd – modern Markdown viewer

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 example
Click image for full size

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.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted