mdvi: A Vim-Inspired Terminal Markdown Viewer Built in Rust
#Rust

mdvi: A Vim-Inspired Terminal Markdown Viewer Built in Rust

Startups Reporter
1 min read

Developer taf2 releases mdvi, a Rust-based terminal Markdown viewer combining Vim navigation with modern rendering features like syntax highlighting and image support.

Featured image

Developer Tim Frazier has launched mdvi, a terminal-based Markdown viewer that brings Vim-style navigation to document browsing. Built in Rust, the tool addresses the need for fast, keyboard-driven Markdown viewing in terminal environments without sacrificing modern formatting features.

Core Features

mdvi stands out with:

  • Vim-inspired navigation: Familiar j/k scrolling, Ctrl-d/Ctrl-u page movements, and search with /
  • Rich rendering: Supports tables, footnotes, task lists, and syntax-highlighted code blocks
  • Image display: Handles local and remote images through multiple terminal protocols
  • Live reload: Press r to refresh content when files change
  • Line jumping: Start viewing at specific line numbers with --line

Screenshot 2026-02-10 at 4 23 29 PM The interface shows clean typography with status bar visibility (Credit: taf2)

Technical Implementation

The tool leverages Rust's strengths:

  1. Performance: Handles large files efficiently through zero-copy parsing
  2. Rendering: Uses pulldown-cmark for Markdown processing
  3. UI: Built on ratatui (formerly tui-rs) for terminal rendering
  4. Images: Supports sixel, kitty, and halfblock protocols via configurable backends

Installation Options

  • Homebrew: brew install taf2/tap/mdvi
  • From source: cargo install --path .
  • Direct run: cargo run -- README.md

Why It Matters

While tools like glow exist, mdvi fills a specific niche for developers who:

  • Prefer Vim-style navigation
  • Need to quickly reference documentation while working in terminals
  • Require image support in technical documentation

The project demonstrates how Rust's ecosystem enables building robust CLI tools without compromising on features typically found in GUI applications.

For developers working extensively with Markdown in terminal environments, mdvi offers a compelling alternative to constantly switching between editors and previewers. Its focus on keyboard navigation and live reload makes it particularly useful for technical writing workflows.

Comments

Loading comments...