GitHub

befold

Features & Supported File Types

befold is a macOS-only viewer for Mermaid, Markdown, SVG, HTML, CSV/TSV, images, PDF and source code. This page lists every feature, the full table of supported extensions, the keyboard shortcuts and answers to common questions.

Features

Quick Open (⌘P)
Fuzzy-search filenames to jump straight to a file. An empty query lists recents and bookmarks, and ./ or ../ path input works too
Sidebar & Swipe
Open the sidebar with ⌘S to walk folders and filter by name. Move between files you have read with ⌘[ / ⌘] or a two-finger trackpad swipe
Open from the CLI
befold path/... opens several files at once. Display flags like --sidebar, --source and --line-numbers, plus --check to verify a file opens and --bookmark
Live Reload
Every change from an external editor or an AI lands in the preview instantly β€” including files recreated on save, renames and moves
Git Diff View
Read what your branch changes β€” committed work included β€” as a source diff. Switch rendered / source / diff with ⌘1 / ⌘2 / ⌘3, flip the diff layout between stacked and side by side with ⌘\. The view mode is remembered per file
A Sidebar That Knows Your Changes
Changed files carry a one-letter colored badge, and folders roll up the changes beneath them. Staged, unstaged, untracked and committed-on-branch are told apart, and βŒƒβŒ˜G narrows the list to changed files only
Large Files, Too
Markdown, CSV/TSV and source code load in chunks, so files up to 100MB open without a wait. Pull in the rest with β€œLoad More”
QuickLook Support
Ships a QuickLook extension. Select a file in Finder and hit space to see Mermaid or Markdown rendered β€” no need to open the app
Git-Aware Link Resolution
Only paths that really exist become links. When a relative path misses, befold finds the file among git-tracked ones β€” and keeps up when you switch worktrees or branches
Recent Repositories
Reopen a recently used repository from the File menu, tabs and all. Worktrees are grouped under their main repository
Wide Format Support
Renders .mmd, .md, .svg, .html, .csv, .tsv β€” plus displays .png, .jpg, .gif, .webp, .pdf, and source code in 50+ languages. Detects UTF-8/16/32, Shift_JIS and EUC-JP automatically
Rendered / Source Toggle
Switch between rendered and source view with ⌘U. Source view has syntax highlighting and line numbers via ⌘L. Find (⌘F) supports regex, case and whole-word matching
Tabs & Session Restore
Native macOS tabs. Your previous tab layout is restored on next launch, and zoom, view mode and scroll position are remembered per file
Zoom & Dark Mode
Zoom with ⌘+/⌘-/⌘0. Follows macOS dark mode automatically, and the source-view font is configurable in Settings
In-App Updates
Notifies when a new version is available. One-click update

Supported File Types

TypeExtensionsViewMax size
Mermaid.mmd .mermaid

Renders flowcharts, sequence diagrams, Gantt charts and more as diagrams.

Rendered / Source10MB
Markdown.md .markdown

Mermaid inside code blocks is rendered as a diagram too, in GitHub-like styling.

Rendered / Source100MB
SVG.svg

Shown as an image; switch to source view to read the XML.

Rendered / Source10MB
HTML.html .htm

Switch between the rendered result and the source.

Rendered / Source10MB
CSV / TSV.csv .tsv

Formatted as a table. Large files load in chunks.

Rendered / Source100MB
Image.png .jpg .jpeg .gif .webp .bmp .ico

Displayed with zoom support. There is no source view, since there is no text source.

Rendered only50MB
PDF.pdf

Pages are shown in a continuous scroll.

Rendered only50MB
Source code.bash .c .cc .cjs .cpp .cs .css .cxx .diff .go .gql .graphql .h .hpp .ini .java .js .json .jsonc .jsx .kt .kts .less .lua .m .mjs .mk .mm .patch .php .pl .plist .pm .py .r .rb .rs .scss .sh .sql .swift .toml .ts .tsx .vb .xml .yaml .yml .zsh

Shown with syntax highlighting and line numbers (⌘L). Loads in chunks.

Source only100MB

Any other extension opens as plain text. Character encodings UTF-8/16/32, Shift_JIS and EUC-JP are detected automatically.

Keyboard Shortcuts

⌘OOpen a file or folder
⌘PQuick Open (fuzzy filename search)
⌘SShow or hide the sidebar
⌘[ / ⌘]Go to the previously / next viewed file
⌘UToggle between rendered and source view
⌘1 / ⌘2 / ⌘3Switch the display mode (rendered / source / diff)
⌘\Toggle the diff layout between stacked and side by side
⌘LToggle line numbers in source view
⌘DAdd or remove a bookmark
⌘F / ⌘GFind in page / find next
⌘0 / ⌘+ / ⌘-Actual size / zoom in / zoom out
βŒƒβŒ˜HShow hidden files
βŒƒβŒ˜GShow changed files only
βŒƒβŒ˜TToggle the sidebar tree view
βŒƒβŒ˜FEnter full screen
⌘WClose the window

Frequently Asked Questions

Is there a Windows or Linux version?

No. befold is a macOS-only app and requires macOS 14 (Sonoma) or later.

Does befold cost anything?

No. befold is free and open source under the MIT license, and the source is published on GitHub.

Can I edit files in befold?

No. befold is a read-only viewer. You edit in your usual editor, and befold watches the file and reflects each change immediately.

How large a file can befold open?

Markdown, CSV/TSV and source code load in chunks, so they open up to 100MB. Mermaid, SVG and HTML are built in one pass and are limited to 10MB; images and PDFs to 50MB.

What happens with an extension that is not in the table?

It opens as plain text. The table lists the extensions befold recognises as a specific type β€” not the only files it can open.

Can I preview from Finder without opening the app?

Yes. befold ships a QuickLook extension, so selecting a file in Finder and pressing space shows Mermaid or Markdown already rendered.

Can I open files from the terminal?

Yes. Pass one or more paths to the bundled befold command to open them all at once, and use --sidebar, --source or --line-numbers to choose how they open.

Requirements

macOS 14 (Sonoma) or later

Download for Mac

GitHub