mdr

A beautiful, cross-platform terminal markdown renderer. Read docs, READMEs, and notes without leaving your shell.

.NET 10 Windows macOS Linux x64 + ARM64 MIT License
❯ winget install michaelsanford.mdr
Download Latest Release
⌨ PowerShell
─ □ ✕
# Open a file directly
❯ mdr README.md

# Or run with no arguments to browse and pick one
❯ mdr

Select a file to open
Current: ~/projects/mdr
  📁 .. (Parent Directory)
  📁 .github/
  📁 docs/
> 📄 README.md
  📄 CHANGELOG.md
  📄 Program.cs
  📄 LICENSE
  ❌ Cancel
(Move up and down to reveal more options)
 ↑↓ move  Enter open / enter directory  Esc / Cancel quit
⌨ PowerShell
─ □ ✕
# Getting Started

Welcome to the project. This guide covers installation,
configuration, and basic usage of mdr.

## Installation

Download the latest release from GitHub (https://github.com/michaelsanford/mdr)

### From Source

• Clone the repository
• Run dotnet build -c Release
• Copy the binary to your PATH

│ mdr adapts to your terminal width automatically.
 README.md │ 1–24 of 86 lines │ 28%
 ↑↓ scroll  PgUp page up  PgDn page down  Home top  End bottom  t Monokai  q quit
mdr SAMPLE.md
## Code Blocks

╭─csharp─────────────────────────────────────────────────────╮
│ using System;                                              │
│                                                            │
│ public class Program                                       │
│ {                                                          │
│     public static async Task Main(string[] args)           │
│     {                                                      │
│         var message = "Hello, World!";                     │
│         Console.WriteLine(message);  // Print it           │
│     }                                                      │
│ }                                                          │
╰────────────────────────────────────────────────────────────╯
 SAMPLE.md │ 42–65 of 255 lines │ 25%
 ↑↓ scroll  PgUp page up  PgDn page down  Home top  End bottom  t Dracula  q quit
mdr SAMPLE.md
## Supported Languages

╭──────────────┬───────────┬──────────┬──────╮
│ Language     │ Extension │ Keywords │ Year │
├──────────────┼───────────┼──────────┼──────┤
│ C#           │ .cs       │ 34       │ 2000 │
│ JavaScript   │ .js       │ 24       │ 1995 │
│ TypeScript   │ .ts       │ 24       │ 2012 │
│ Python       │ .py       │ 27       │ 1991 │
│ Rust         │ .rs       │ 24       │ 2010 │
│ Go           │ .go       │ 21       │ 2009 │
╰──────────────┴───────────┴──────────┴──────╯
 SAMPLE.md │ 180–203 of 255 lines │ 80%
 ↑↓ scroll  PgUp page up  PgDn page down  Home top  End bottom  t Nord  q quit

Features

Rich Formatting

Headings, bold, italic, inline code, blockquotes, and links — all rendered with native ANSI terminal formatting.

Syntax Highlighting

Code blocks with keyword highlighting for C#, JavaScript, TypeScript, Python, Rust, and Go.

Full-Width Tables

Tables render with rounded Unicode borders, automatically scaled to fill your terminal width.

Interactive Pager

Scroll through long documents with vim-style keybindings. Short output prints directly.

Interactive File Picker

Run mdr with no file to browse the current directory, step in and out of folders, and pick a file to open — Markdown files are highlighted.

Color Schemes

Cycle through Monokai, Dracula, Nord, GitHub Dark, Solarized, and Catppuccin with a single keypress.

Fully Private

No telemetry, no network requests, no data collection. Everything runs locally on your machine.

Install

Each release is a self-contained, statically-linked single-file binary. No installer, no runtime dependencies — just download, verify, and run.

# Download (x64 or ARM64)
iwr "https://github.com/michaelsanford/mdr/releases/latest/download/mdr-vX.Y.Z-win-x64.zip" -Out mdr.zip

# Verify attestation
gh attestation verify mdr.zip --owner michaelsanford

# Verify signature
cosign verify-blob mdr.zip `
  --bundle mdr-vX.Y.Z-win-x64.zip.bundle `
  --certificate-identity-regexp "github.com/michaelsanford/mdr" `
  --certificate-oidc-issuer "https://token.actions.githubusercontent.com"

# Extract and run
Expand-Archive mdr.zip -DestinationPath . -Force
.\mdr.exe README.md

Or build from source:

# Requires .NET 10 SDK
dotnet publish -c Release --self-contained