ConfigsApr 12, 2026·2 min read

Glow — Render Markdown on the CLI with Style

Glow is a terminal-based Markdown reader from Charmbracelet. Renders Markdown beautifully in the terminal with syntax highlighting, word wrapping, and theming. Also features a stash for bookmarking Markdown files.

TL;DR
Glow renders Markdown files with syntax highlighting and theming directly in the terminal.
§01

What it is

Glow is a terminal-based Markdown reader built by Charmbracelet. It renders Markdown files with syntax highlighting, word wrapping, and configurable themes directly in your terminal. It also features a stash system for bookmarking and organizing Markdown files.

Glow targets developers who read documentation, README files, and notes in the terminal. It is part of the Charmbracelet ecosystem of terminal UI tools written in Go.

§02

How it saves time or tokens

Glow removes the need to switch to a browser or GUI editor to read Markdown files. Instead of opening a README in GitHub or VS Code, you run glow README.md and get a formatted, readable view instantly. The stash feature lets you bookmark frequently referenced documents for quick access. Piping support means you can pipe Markdown content from other commands (curl, cat, git show) directly into Glow for formatted display.

§03

How to use

  1. Install Glow:
brew install glow              # macOS
go install github.com/charmbracelet/glow@latest
sudo apt install glow           # Debian/Ubuntu
  1. Render a Markdown file:
glow README.md
glow -p README.md              # Pager mode
  1. Render from a URL or pipe:
glow https://raw.githubusercontent.com/org/repo/main/README.md
curl -s https://example.com/doc.md | glow -
§04

Example

Using Glow with git to read commit messages and documentation:

# Read a specific file from a git branch without checkout
git show main:docs/architecture.md | glow -

# Browse all Markdown files in a directory
glow docs/

# Stash a frequently used document
glow stash README.md

# List stashed documents
glow stash list

# Use a dark theme
glow -s dark README.md

# Set default style in config
mkdir -p ~/.config/glow
echo 'style: "dark"' > ~/.config/glow/glow.yml
§05

Related on TokRepo

§06

Common pitfalls

  • Glow's default terminal width may truncate wide tables. Use the -w flag to set a specific width or maximize your terminal window.
  • The stash feature requires a Charm account for cloud sync. For local-only usage, stashing works without an account but does not sync across machines.
  • Some Markdown extensions (custom HTML, advanced tables) may not render perfectly. Glow follows standard CommonMark with GFM extensions.

Frequently Asked Questions

Does Glow support syntax highlighting in code blocks?+

Yes. Glow renders code blocks with syntax highlighting based on the language identifier. It supports all common programming languages and uses the Glamour rendering library under the hood.

Can Glow render Markdown from a URL?+

Yes. Pass a raw Markdown URL directly to Glow and it fetches and renders it. This works with GitHub raw content URLs, GitLab, and any publicly accessible Markdown file.

What themes does Glow support?+

Glow ships with dark and light themes. You can set the theme per invocation with the -s flag or set a default in ~/.config/glow/glow.yml. Custom themes can be created using the Glamour style system.

What is the Glow stash?+

The stash is a bookmark system for Markdown files. You can save frequently referenced documents and access them quickly. With a Charm account, stashed documents sync across machines.

Is Glow part of a larger ecosystem?+

Yes. Glow is built by Charmbracelet, which also makes Bubble Tea (TUI framework), Lip Gloss (terminal styling), and other Go-based terminal tools. Glow uses their Glamour Markdown rendering library.

Citations (3)

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets