Skip to content

Latest commit

 

History

445 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Glyph

CI Release CodeQL codecov Latest release Downloads License: MIT Tauri v2 React 19 Code style: Biome

A modern, cross-platform markdown viewer and editor with platform-native styling.

Built with Tauri v2, React 19, and TypeScript.

Glyph

Demo

Demo

Try It

The samples/ directory is a tiny demo workspace. Open it as a folder (Cmd/Ctrl+Shift+O) to see every rendering feature plus working wikilinks. samples/README.md is the showcase document; the surrounding files exist so its [[wikilinks]] resolve.

Features

Markdown Rendering

  • GitHub Flavored Markdown, alerts, footnotes, heading anchors, and emoji shortcodes
  • Wikilinks and backlinks with hover preview and inline note embeds ([[note]], ![[note]])
  • Math (KaTeX), Mermaid and D2 diagrams, CSV/TSV tables, and syntax-highlighted code (6 themes)
  • YAML frontmatter, sanitised inline HTML, and bidirectional (RTL) text
  • Local and remote images with a zoomable lightbox
  • Per-syntax toggles in Settings → Markdown

Editor

  • Source, split, and live-preview modes per tab
  • New untitled (in-memory) documents (Cmd/Ctrl+N), save with Cmd/Ctrl+S, and an optional Auto Save toggle
  • Format toolbar, inline formatting shortcuts, and wrap-selection
  • Wikilink autocomplete, spell check, and Vim/VSCode keymaps
  • Undo/redo for programmatic edits (task toggles, etc.)

Workspace & Navigation

  • Folder workspaces with a sidebar tree, tabs, and create/rename/move/delete; create a new workspace from within the app
  • Graph view (Cmd/Ctrl+G), command palette (Cmd/Ctrl+K, with tag: / frontmatter filters), a sidebar Tags panel, and in-document search (Cmd/Ctrl+F)
  • Table of contents, resizable panels, zoom, and session/window restore
  • Drag-and-drop, file associations, and a glyph CLI (glyph file.md, glyph ~/notes/)

Viewer & Export

  • Jupyter notebooks (.ipynb) and JSON Canvas (.canvas) boards
  • Print and export to HTML, DOCX, EPUB, and PDF (vector diagrams, self-contained, offline)
  • Export a whole workspace as a static website, in-app or headless from the CLI

Sync (experimental)

  • Per-workspace, Git-backed Cloud Sync to any remote you control, with a status-bar ahead/behind/dirty pill

Appearance

  • System / Light / Dark themes and platform-native styling (macOS vibrancy, Windows Mica)
  • Localized, RTL-aware UI; customizable fonts, size, line height, and content width

AI (optional)

  • Chat sidebar, quick actions (summarize, explain, translate, simplify), and text-to-speech
  • Providers: Claude, OpenAI, and Ollama (local)

Platform

  • macOS, Windows, and Linux; native menu bar with remappable shortcuts and update notifications
  • iOS and Android (experimental): open and read single files, with a touch layout for phones and tablets; folder workspaces are desktop-only for now
  • Plugins (experimental): extend rendering, palette, status bar, dictionaries, and themes; sandboxed by default with consent-gated permissions and checksum-verified marketplace installs (see the plugin docs)
  • Local-first with opt-in crash reporting (off by default; see Privacy & Error Reporting)

Install

macOS (Homebrew)

brew tap glyph-md/tap
brew trust glyph-md/tap
brew install --cask glyph

brew trust is required once because Glyph ships from a third-party tap; recent Homebrew refuses to load casks from untrusted taps.

Windows (winget)

winget install hamidfzm.Glyph

Windows (Chocolatey)

choco install glyph

Windows (Scoop)

scoop bucket add glyph-md https://github.com/glyph-md/scoop-bucket
scoop install glyph

Linux (Snap)

sudo snap install glyph

Arch Linux (AUR)

yay -S glyph-md-bin

Linux (Homebrew)

brew tap glyph-md/tap
brew install glyph

Debian/Ubuntu (PPA)

sudo add-apt-repository ppa:hamidfzm/glyph
sudo apt update
sudo apt install glyph

Debian

curl -fsSL https://glyph-md.github.io/apt-repo/gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/glyph.gpg
echo "deb [signed-by=/usr/share/keyrings/glyph.gpg] https://glyph-md.github.io/apt-repo stable main" | sudo tee /etc/apt/sources.list.d/glyph.list
sudo apt update
sudo apt install glyph

Fedora / RHEL (DNF)

sudo tee /etc/yum.repos.d/glyph.repo < <(curl -fsSL https://glyph-md.github.io/rpm-repo/glyph.repo)
sudo dnf install glyph

Linux (manual)

Download the .deb, .rpm, or .AppImage from Releases.

# Debian/Ubuntu
sudo dpkg -i glyph_*.deb

# Fedora/RHEL
sudo dnf install ./Glyph-*.rpm

# AppImage
chmod +x Glyph_*.AppImage
./Glyph_*.AppImage

Command-line usage

Installing from a package manager puts a glyph command on your PATH:

glyph README.md      # open a file
glyph ~/notes/       # open a folder as a workspace
glyph --help         # usage, flags, and export formats

# export a document (headless; exits when done)
glyph README.md --export pdf              # writes README.pdf beside it
glyph notes.md --export docx --out ~/out.docx

# export a workspace as a static website
glyph ~/notes/ --export site --out ./site

--export accepts pdf, docx, epub, html, and site. Without --out a document export writes beside its input with the format's extension; site always needs one. Exports run without showing a window, print the path they wrote to stdout, and exit nonzero with a message on stderr if they fail, so they can drive CI publishing (on Linux runners, wrap the command in xvfb-run). A document export includes the table of contents when Settings > Print has it enabled.

The command is provided by the Homebrew cask (macOS), Chocolatey or Scoop (Windows), and the deb package or Homebrew formula (Linux). The macOS .dmg and Windows MSI install the app only; use a package manager for the terminal command.

Development

pnpm install
pnpm tauri dev

Open a file or folder via CLI argument:

pnpm tauri dev -- -- /path/to/file.md
pnpm tauri dev -- -- /path/to/folder

Build for production:

pnpm tauri build

Testing

pnpm test                       # Run frontend tests (Vitest)
pnpm test:coverage              # Run with coverage report
cd src-tauri && cargo test      # Run Rust tests

Linting & Formatting

pnpm lint                       # Lint TypeScript (Biome)
pnpm format:check               # Check formatting (Biome)
pnpm check                      # Lint + format + organize imports
cd src-tauri && cargo clippy    # Lint Rust

Comparison with Other Markdown Apps

Glyph is built around speed, native feel, and offline-first usage. The tables below compare its current capabilities against widely used markdown apps. Items marked "planned" track to issues on the roadmap.

Rendering

Feature Glyph Obsidian Typora MarkText Zettlr Joplin VS Code
GitHub Flavored Markdown
Math (KaTeX/MathJax) plugin
Mermaid diagrams ⚠️ plugin
D2 diagrams plugin plugin
Syntax-highlighted code ✅ (6 themes)
GitHub-style alerts ⚠️ ⚠️
YAML frontmatter ⚠️
Emoji shortcodes plugin
Jupyter notebooks (.ipynb) plugin
JSON Canvas (.canvas) plugin

Editing

Feature Glyph Obsidian Typora MarkText Zettlr Joplin VS Code
Source editor n/a
WYSIWYG / inline preview ⚠️ ⚠️ ⚠️
Split view
Spell check

Navigation

Feature Glyph Obsidian Typora MarkText Zettlr Joplin VS Code
Tabs
Folder / workspace (vault) sidebar ⚠️
Wikilinks & backlinks plugin
Graph view plugin plugin
Tag / metadata search planned plugin
Command palette
In-document search
Table of contents
Live reload on disk change ⚠️ n/a n/a ⚠️ n/a

Output

Feature Glyph Obsidian Typora MarkText Zettlr Joplin VS Code
Print
Export PDF plugin
Export HTML / DOCX / EPUB plugin ✅ (Pandoc) ⚠️ ✅ (Pandoc) ⚠️ plugin

Power features

Feature Glyph Obsidian Typora MarkText Zettlr Joplin VS Code
AI (multi-provider, local) plugin plugin
Text-to-speech plugin plugin
Plugin / extension API ⚠️ experimental ⚠️
Cloud sync ⚠️ Git-backed paid
Graph view plugin

Platform

Feature Glyph Obsidian Typora MarkText Zettlr Joplin VS Code
Native window styling ✅ (vibrancy/Mica) ⚠️ ⚠️ ⚠️ ⚠️ ⚠️ ⚠️
Native bundle (non-Electron) ✅ Tauri (~3 MB core) ✅ Qt
macOS / Windows / Linux
Mobile (iOS / Android) ⚠️ experimental (viewing)
File associations + CLI ⚠️ ⚠️ ⚠️
Open source ✅ MIT
Free $14.99

Legend: ✅ supported · ⚠️ partial / inconsistent · ❌ not supported · plugin = third-party · planned = on roadmap

Note on "WYSIWYG / inline preview": Glyph's editor has split-view live preview and styled markdown tokens (bold/italic render as bold/italic in source), but markdown markers remain visible. Typora-style fully inline rendering is not implemented.

Privacy & Error Reporting

Glyph is local-first: your documents are read and written on your machine. Nothing is uploaded anywhere unless you opt into Cloud Sync for a workspace, which pushes that workspace to a Git remote you control.

Crash and error reporting is opt-in and off by default. Nothing is sent until you turn it on in Settings → Privacy → Send crash reports, and even then it is only active in production builds (never during development).

When enabled, reports include only:

  • Stack traces of the crash or unhandled error
  • Operating system and Glyph version
  • The error message

They never include your file contents, file paths, file names, or any links: these are stripped from every report before it is sent. You can turn reporting off again at any time from the same setting.

Sponsors

Glyph is free and open source. These sponsors help keep it that way.

Sentry

Sentry provides error monitoring through their Sponsored Business plan, which we use for the opt-in crash reporting above.

Support Glyph

If Glyph is useful to you, donations are welcome via crypto:

Network Asset Address
Solana SOL <pending>
BNB Smart Chain (BEP-20) USDT <pending>
Tron (TRC-20) USDT <pending>

About

A modern, cross-platform markdown viewer and editor with native styling, live preview, AI assistance, and offline-first.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

21 stars

Watchers

1 watching

Forks

Releases

Sponsor this project

Used by

Contributors

Languages