mdr - Markdown Beeline Reader
A small, fast TUI markdown reader for the terminal. Clean pastel theme with BeeLine gradients for line tracking, mouse scroll + hover URL previews, keyboard-first navigation, and solid markdown coverage including tables and code blocks.
Features
- Terminal UI with a pastel color theme.
- BeeLine-style gradient for easier line tracking (disable with
--no-beeline, toggle withb). - Plain mode toggle (
m) for minimal styling. - Multi-document queue with visual current-file indicator (
[current/total] pathin the title). - Startup markdown discovery from mixed file and directory inputs.
- In-app markdown filesystem browser (
o) starting from current working directory. - Picker traversal support: enter directories, go to parent, and open markdown files directly.
- Keyboard navigation: Up/Down, Space or Tab for page down,
hfor commands. - Mouse wheel scrolling and hover to show link URLs.
- Basic markdown styling for headings, lists, emphasis, inline code, blockquotes, and rules.
- Tables with column fitting and multi-line cell wrapping (headers preserved).
- Scrollbar that hides when all content fits on screen.
- Search with
/, next/prev vian/N, and match highlighting (current match emphasized). - Links are underlined and colored; press Enter to open the nearest link.
Usage
cargo run -- path/to/file.md
Queue startup from mixed file + directory inputs:
cargo run -- path/to/file.md docs/
Disable BeeLine styling:
cargo run -- --no-beeline path/to/file.md
Install a local release build:
cargo install --path . --lockedKey Bindings
Up/Down: Scroll line by lineSpaceorTab: Page downBacktab: Page up]: Next document in queue[: Previous document in queueg: Go-to-document dialog for queue navigationo: Open markdown filesystem browser (from current working directory)/: Searchn/N: Next / previous matchb: Toggle BeeLinem: Toggle plain modeh: Helpq: QuitEnter: Open nearest link
Install
cargo install --path . --lockedBuild
Notes
- The UI is intentionally lightweight; rendering is plain-text with styling rather than full layout.
- Tables wrap long cells vertically to fit the current viewport width.



