← Projects

mdview

A polished, full-screen terminal Markdown viewer

Year
2026
Status
shipped
Built with
Rust, ratatui, syntect

Install

curl -fsSL https://raw.githubusercontent.com/shawnmian/mdview/main/install.sh | sh
                    │                                                                ▐
 ~/Projects/my-app  │   my-app                                                       ▐
                    │   ───────────────────────────────────────────────────────────  ▐
 ▌ README.md        │                                                                ▐
   ARCHITECTURE.md  │   A small service that turns Markdown into something you       ▐
   PLAN.md          │   actually want to read in a terminal. See the design notes.   ▐
   TODO.md          │                                                                ▐
   ▾ docs/          │   Installation                                                 ▐
     api.md         │   ────────────────────────────                                 ▐
     guide.md       │                                                                ▐
                    │   ▏ bash                                                       ▐
                    │   ▏ cargo install --path .                                     ▐
                    │   ▏                                                            ▐
                    │                                                                ▐
                    │   Status                                                       ▐
                    │   ────────────────────────────                                 ▐
                    │                                                                ▐
                    │   ☑ Renderer                                                   ▐
                    │                                                                ▐
                    │   ☐ Themes                                                     ▐
                    │
                    │     ◦ solarized
                    │     ◦ gruvbox
                    │
 ‹ hide             │   ▎ Everything here is generated by an agent and read by a
 README.md                                    25/32   ↑↓ browse  ↹ hide files  q quit

mdview is built for one workflow in particular: you have a pile of Markdown generated by tools like Claude Code — README.md, PLAN.md, ARCHITECTURE.md, TODO.md — and you want a fast, distraction-free way to read and switch between them without leaving the terminal.

It renders Markdown as a document, not as source code. Real headings, wrapped prose with comfortable margins, syntax-highlighted code blocks, tables, and task lists. A collapsible sidebar keeps every document one keystroke away, and open files reload themselves the moment they change on disk.

Other install options

The installer drops a binary at ~/.local/bin/mdview, verifies its SHA-256 checksum, and tells you what to add to your PATH if that directory isn’t on it yet. To install somewhere else, or to pin a version:

curl -fsSL https://raw.githubusercontent.com/shawnmian/mdview/main/install.sh \
  | MDVIEW_INSTALL_DIR=/usr/local/bin MDVIEW_VERSION=v0.1.0 sh

Prebuilt binaries cover Linux — x86_64 and aarch64, statically linked against musl so they run on any distribution — and macOS on both Apple Silicon and Intel.

How it is put together

The interesting constraint is that Markdown parsing knows nothing about the terminal, and the terminal code knows nothing about Markdown. Source becomes a width-independent block model; only later does a renderer turn that model plus a width into styled lines. Resizing the window re-runs the second half and never the first.