Render markdown on the CLI, with pizzazz! 💅🏻
Alternatives To Glow
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
10 hours ago175otherMarkdown
📚 Collaborative cheatsheets for console commands
Marked30,53690,50111,33314 hours ago142July 31, 202321otherTypeScript
A markdown parser and compiler. Built for speed.
Linux Command25,13822a day ago44February 24, 202366mitMarkdown
Glow13,327153 days ago27May 09, 2023124mitGo
Render markdown on the CLI, with pizzazz! 💅🏻
10 hours ago347gpl-3.0TypeScript
Your One-Stop Publication Workbench
4 years agomit
The site of classic Markdown presentation writer app
Nb5,73328 days ago295July 18, 2023103agpl-3.0Shell
CLI and local web plain text note‑taking, bookmarking, and archiving with linking, tagging, filtering, search, Git versioning & syncing, Pandoc conversion, + more, in a single portable script.
20 days ago1February 27, 201816gpl-3.0C
A command-line based markdown presentation tool.
Percollate3,95524 days ago62March 07, 202313mitJavaScript
A command-line tool to turn web pages into readable PDF, EPUB, HTML, or Markdown docs.
Assemble3,7883,6062724 years ago119May 20, 201729mitCSS
Get the rocks out of your socks! Assemble makes you fast at web development! Used by thousands of projects for rapid prototyping, themes, scaffolds, boilerplates, e-books, UI components, API documentation, blogs, building websites/static site generator, an alternative to Jekyll for gh-pages and more! Gulp- and grunt-friendly.
Alternatives To Glow
Select To Compare

Alternative Project Comparisons


Render markdown on the CLI, with pizzazz!

Glow Logo Latest Release GoDoc Build Status Go ReportCard

Glow UI Demo

What is it?

Glow is a terminal based markdown reader designed from the ground up to bring out the beauty—and power—of the CLI.

Use it to discover markdown files, read documentation directly on the command line and stash markdown files to your own private collection, so you can read them anywhere. Glow will find local markdown files in subdirectories or a local Git repository.

By the way, all data stashed is encrypted end-to-end: only you can decrypt it. More on that below.


Package Manager

# macOS or Linux
brew install glow

# macOS (with MacPorts)
sudo port install glow

# Arch Linux (btw)
pacman -S glow

# Void Linux
xbps-install -S glow

# Nix
nix-env -iA nixpkgs.glow

# FreeBSD
pkg install glow

# Solus
eopkg install glow

# Windows (with Scoop or Chocolatey)
scoop install glow
choco install glow

# Android (with termux)
pkg install glow

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

# Fedora/RHEL
echo '[charm]
gpgkey=' | sudo tee /etc/yum.repos.d/charm.repo
sudo yum install glow

Or download a binary from the releases page. MacOS, Linux, Windows, FreeBSD and OpenBSD binaries are available, as well as Debian, RPM, and Alpine packages. ARM builds are also available for macOS, Linux, FreeBSD and OpenBSD.


Or just install it with go:

go install

Build (requires Go 1.13+)

git clone
cd glow
go build


Simply run glow without arguments to start the textual user interface and browse local and stashed markdown. Glow will find local markdown files in the current directory and below or, if you’re in a Git repository, Glow will search the repo.

Markdown files can be read with Glow's high-performance pager. Most of the keystrokes you know from less are the same, but you can press ? to list the hotkeys.


Glow works with the Charm Cloud to allow you to store any markdown files in your own private collection. You can stash a local document from the Glow TUI by pressing s.

Stashing is private, its contents will not be exposed publicly, and it's encrypted end-to-end. More on encryption below.


In addition to a TUI, Glow has a CLI for working with Markdown. To format a document use a markdown source as the primary argument:

# Read from file

# Read from stdin
echo "[Glow](" | glow -

# Fetch README from GitHub / GitLab

# Fetch markdown from HTTP
glow https://host.tld/


You can also stash documents from the CLI:

glow stash

Then, when you run glow without arguments will you can browse through your stashed documents. This is a great way to keep track of things that you need to reference often.

Word Wrapping

The -w flag lets you set a maximum width at which the output will be wrapped:

glow -w 60


CLI output can be displayed in your preferred pager with the -p flag. This defaults to the ANSI-aware less -r if $PAGER is not explicitly set.


You can choose a style with the -s flag. When no flag is provided glow tries to detect your terminal's current background color and automatically picks either the dark or the light style for you.

glow -s [dark|light]

Alternatively you can also supply a custom JSON stylesheet:

glow -s mystyle.json

For additional usage details see:

glow --help

Check out the Glamour Style Section to find more styles. Or make your own!

The Config File

If you find yourself supplying the same flags to glow all the time, it's probably a good idea to create a config file. Run glow config, which will open it in your favorite $EDITOR. Alternatively you can manually put a file named glow.yml in the default config path of you platform. If you're not sure where that is, please refer to glow --help.

Here's an example config:

# style name or JSON path (default "auto")
style: "light"
# show local files only; no network (TUI-mode only)
local: true
# mouse support (TUI-mode only)
mouse: true
# use pager to display markdown
pager: true
# word-wrap at width
width: 80

🔒 Encryption: How It Works

Encryption works by issuing symmetric keys (basically a generated password) and encrypting it with the local SSH public key generated by the open-source charm library. That encrypted key is then sent up to our server. We can’t read it since we don’t have your private key. When you want to decrypt something or view your stash, that key is downloaded from our server and decrypted locally using the SSH private key. When you link accounts, the symmetric key is encrypted for each new public key. This happens on your machine and not our server, so we never see any unencrypted data.


We’d love to hear your thoughts on this project. Feel free to drop us a note!



Part of Charm.

The Charm logo

Charm热爱开源 • Charm loves open source

Popular Command Line Projects
Popular Markdown Projects
Popular Command Line Interface Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.