Terminal GuideTerminal Guide
glow icon

glow

Dev Tools
macOSLinuxWindows
Go

Markdown renderer for the terminal.

Official Website

Features

Markdown RenderingStash FeatureWord WrappingThemes

Installation

Homebrew
brew install glow
Pacman (Arch)
pacman -S glow

Why use glow?

glow is a tool for beautifully rendering Markdown in the terminal. View READMEs and browse documentation directly from your terminal without opening a browser.

Beautiful Rendering

Beautifully displays syntax highlighting, tables, lists, headings, and more.

Pager Mode

Comfortably scroll through long documents with pager. Less-like navigation experience.

Stash Feature

Save and manage frequently viewed documents locally. Can also fetch from GitHub.

Pipe Support

Can receive Markdown from standard input. Works with other commands.

Installation

Installation
# macOS (Homebrew)
brew install glow

# Arch Linux
sudo pacman -S glow

# Ubuntu/Debian
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://repo.charm.sh/apt/gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/charm.gpg
echo "deb [signed-by=/etc/apt/keyrings/charm.gpg] https://repo.charm.sh/apt/ * *" | sudo tee /etc/apt/sources.list.d/charm.list
sudo apt update && sudo apt install glow

# Install via Go
go install github.com/charmbracelet/glow@latest

# Windows (Scoop)
scoop install glow

# Windows (Chocolatey)
choco install glow

Basic Usage

Display Files

Basic Display
# Display README
glow README.md

# Display specific Markdown file
glow docs/guide.md

# Auto-detect README in current directory
glow

# Selectively display current directory
glow .

Pager Mode

Pager
# Display in pager mode (for long documents)
glow -p README.md

# Or
glow --pager README.md

In pager mode, scroll with j/k or arrow keys, and press q to exit.

Read from Standard Input

Pipe
# Pipe Markdown
cat README.md | glow -

# Display remote Markdown via curl
curl -s https://raw.githubusercontent.com/charmbracelet/glow/main/README.md | glow -

# Display inline Markdown via echo
echo "# Hello World

This is **bold** and *italic*." | glow -

Common Patterns

Display Directly from URL

URL
# Display GitHub README
glow https://github.com/charmbracelet/glow

# Display specific file
glow https://github.com/owner/repo/blob/main/docs/guide.md

# Display from raw URL
glow https://raw.githubusercontent.com/charmbracelet/glow/main/README.md

Style Settings

Style
# Available styles
# auto, dark, light, dracula, tokyo-night, notty, etc.

# Dark style
glow -s dark README.md

# Light style
glow -s light README.md

# Dracula theme
glow -s dracula README.md

# Plain output (no style)
glow -s notty README.md

Width Specification

Width
# Specify width (characters)
glow -w 80 README.md

# Match terminal width (default)
glow README.md

# Display with narrow width
glow -w 60 README.md

Advanced Usage

Stash (Document Management)

Stash
# Open interactive Stash browser
glow stash

# Add local Markdown to Stash
glow stash README.md

# Add from GitHub to Stash
glow stash https://github.com/charmbracelet/glow

# List Stash contents
glow stash list

Stash is a feature to save frequently referenced documents locally for easy access later.

Interactive Mode

Interactive
# Launch interactive mode
glow

# Interactive mode in specific directory
glow ~/Documents/docs

# Select and browse files
# After launch, use arrow keys to select, Enter to display

Interactive Mode Key Bindings

j/k or up/down: Navigate
Enter: Display selected file
s: Add to Stash
x: Remove from Stash
/: Search
q: Exit

Configuration File

Configuration
# Configuration file location
# Linux/macOS: ~/.config/glow/glow.yml
# Windows: %APPDATA%/glow/glow.yml

# Configuration example (~/.config/glow/glow.yml)
# Default style
style: "dark"

# Use pager by default
pager: true

# Width setting
width: 100

# Local files only (disable network access)
local: false

# Mouse support
mouse: true

Common Options

OptionDescriptionExample
-p, --pagerDisplay in pager modeglow -p README.md
-s, --styleSpecify styleglow -s dark file.md
-w, --widthSpecify display widthglow -w 80 file.md
-l, --localLocal files onlyglow -l
-a, --allShow hidden filesglow -a .

Practical Examples

Combining with Git

Git Integration
# Display last commit message as Markdown
git log -1 --pretty=%B | glow -

# Display CHANGELOG
glow CHANGELOG.md

# Browse project documentation
glow docs/

Development Workflow

Workflow
# Quickly check new project README
cd new-project && glow

# Check API documentation
glow docs/api.md

# Check contribution guide
glow CONTRIBUTING.md

# Markdown preview (while editing)
# In another terminal
watch -n 2 "glow -p article.md"

Tips

  • Running glow without arguments launches interactive mode to browse Markdown files in the directory
  • Set default style with the GLOW_STYLE environment variable
  • Use glow -s notty for plain output suitable for pipes and redirects
  • To access GitHub private repositories, set the GITHUB_TOKEN environment variable
  • Built with the same design philosophy as other Charm tools (bubble tea, lipgloss), providing a consistent look
Written by Dai AokiPublished: 2026-01-20

Related Articles

Explore More