Download FlashTeX
Two ways to install: A gets you just the LaTeX engine and the flashtex command line, for macOS or Linux, any editor; B gets the native Mac app — a SwiftUI IDE with a live preview, built on that same engine — and bundles the CLI inside it too.
A — Engine + native GUI macOS only, for now
-
macOS app
macOS 14 Sonoma or laterApple Silicon IntelA disk image containing
FlashTeX.app— the Rust engine, PDF writer and capture bridge bundled inside, plus the CLI atContents/MacOS/flashtex-cli(run itsinstall-clisubcommand to also link it into/usr/local/bin). No TeX distribution required.macOS blocks this on first launch, because FlashTeX isn't notarized by Apple yet. You'll need to approve it once — how to do that, or install from the command line and skip it entirely.
-
Command line (app)
macOS · Apple Silicon$ curl -fsSL https://flash-tex.github.io/flashtex/install.sh | shDownloads the same disk image, checks its SHA-256 and copies
FlashTeX.appinto/Applications. Because it doesn't go through a browser, macOS never quarantines the app and you get no approval prompt at all. This installs the app, not just the CLI — for the CLI alone, use path A above. Read the script. -
Checksum
FlashTeX.dmg · SHA-256cd69d1f64777647861a8e88a659a745b0659aa82fc179671ec91e57c20a38382Compare it with the output of
shasum -a 256 ~/Downloads/FlashTeX.dmg.
Platform support
FlashTeX is two things — a LaTeX engine with a command line, and a native Mac app built on it — and they don't have to ship on the same platforms.
- Engine / CLI — macOSAvailable (Apple Silicon)
- Engine / CLI — LinuxAvailable (x86_64)
- Engine / CLI — WindowsPlanned
- Engine / CLI — Web (WASM)Exploring
- Native GUI — macOS (SwiftUI)Available today
- Native GUI — other platformsNot yet
No GUI on your platform yet? The CLI works with any editor or CI, and the JSON Lines worker protocol it speaks is documented for integrations: The flashtex command line and Extending FlashTeX.
Opening the app the first time
FlashTeX is signed, but not notarized by Apple — notarization requires a paid Apple Developer account, which this project doesn't have yet. macOS therefore refuses the first launch of anything downloaded through a browser, with “FlashTeX cannot be opened because it is from an unidentified developer” or a message about an unverified developer. It is not a virus warning: macOS is saying it can't verify who published the app, not that it found anything wrong with it.
If you installed from the DMG, do this once:
- Open
FlashTeX.dmgand drag FlashTeX into Applications. - Right-click (or Control-click) FlashTeX in Applications and choose Open, then confirm. Double-clicking will not offer the option — the right-click menu is what does.
- On recent macOS you may instead need System Settings › Privacy & Security, scroll to the FlashTeX message and click Open Anyway.
You only do this once per version. If macOS claims the app is “damaged”, the quarantine flag survived the copy: run xattr -dr com.apple.quarantine /Applications/FlashTeX.app and open it again.
To avoid the prompt entirely, install from the command line instead:
curl -fsSL https://flash-tex.github.io/flashtex/install.sh | sh
That route verifies the release’s SHA-256 before installing and never attaches the browser quarantine flag, so the app opens normally the first time. Same build, same checksum — only the delivery differs.
B — Engine + CLI macOS · Linux
-
Command line
macOS (Apple Silicon) · Linux (x86_64)$ curl -fsSL https://flash-tex.github.io/flashtex/install-cli.sh | shDetects your OS and CPU, downloads the matching
flashtex-cli-v0.1.8-<platform>.tar.gz, verifies it against the release's SHA256SUMS and refuses on a mismatch, then installsflashtexinto~/.local/binand its fonts/metrics into~/.local/share/flashtex. Pass--prefix /usr/localfor a system install,--version vX.Y.Zfor another release, or--uninstallto remove it. Read the script. -
Direct download
flashtex-cli-v0.1.8Extract anywhere and run
bin/flashtex build main.tex— no TeX installation, no environment variables.bin/flashtex install-clisymlinks it into/usr/local/binwithout breaking the fonts it finds next to itself. -
Checksums
SHA-25676ef685f3714404f5881148b4760eaf3d10e06e7ce297378fb38c668cd2c72af63072c40357df884ad21df13e1075ff6b96cba5029a7417e5674247f053ddb1binstall-cli.shchecks this automatically; by hand, compare with SHA256SUMS from the release.
-
Build it yourself
Latestmain, same bundle as the release-
Clone the repository
$ git clone https://github.com/flash-tex/flashtex.git $ cd flashtex -
Build the Rust engine and helpers
$ for c in compiler pdf bridge render-pipeline; do cargo build --release --manifest-path crates/$c/Cargo.toml done -
Package, install and open
$ ./apps/mac/scripts/make-app.sh --install --open
A locally built app isn't quarantined, so it opens without the approval step.
--installcopies it to~/Applications; add--dmgto produce a disk image too. -
Clone the repository
-
Requirements
To build from source- macOS14 Sonoma or later, Apple Silicon
- SwiftXcode Command Line Tools (Swift 6)
- Ruststable toolchain via rustup
- Handwriting capturexAI (Grok) API key, optional