LaTeX, typeset while you type.

A native Mac editor on a LaTeX engine written from scratch in Rust. The preview redraws on every keystroke.

v0.1.8 · Apple Silicon · macOS 14 or later · MIT

Just the engine + CLI? macOS or Linux, no GUI

Let a, b be positive integers. Suppose that a divides b. Prove that a divides a2 + b2. Is the converse true? In other words, if a divides a2 + b2, must a divide b? Prove your answer.

\hbox to \hsize · interword glue 3.33pt plus 1.67pt minus 1.11pt

From keystroke to page, in one pass of our own engine.

No TeX distribution runs behind FlashTeX. It reads your source and sets the page itself, the way TeX does.

  1. You write ordinary LaTeX. Nothing needs TeX Live or pdflatex installed.

  2. The engine reads the text as tokens: control sequences, math shifts, groups and letters. Macros expand here.

  3. Each word becomes a box with an exact width, taken from the Latin Modern font metrics.

  4. Between the boxes goes glue: space with a natural width that is allowed to stretch or shrink.

  5. The paragraph is broken into lines, and the glue on each line is set so the line fills the measure.

  6. Lines stack onto the page and the preview redraws. It happens again on your next keystroke.

Problem 1. Let a, b be positive integers. Suppose that a divides b. Prove that a divides a2 + b2.

An editor that owns its engine.

Every keystroke, not every save.

An edit reuses the previous layout instead of recompiling the whole document, so the page keeps up with your typing.

Click the page, land in the source.

Every glyph in the preview knows the exact bytes it came from. Click a word or a symbol and the cursor goes there.

One typo doesn't blank the page.

A missing } or an unknown command gets a diagnostic pointing at the exact characters, and the rest of the document keeps rendering around it.

47\item Suppose that $a\mid b\bigl$. Prove that
Unmatched delimiter\bigl has no matching \bigr. Set it at normal size and continued.
(a) Suppose that a | b. Prove that

Sketch it on iPad.in development

A companion iPad app sends an Apple Pencil drawing to the Mac, which proposes LaTeX or TikZ. You review it before anything is inserted.

Free, open, and yours to build.

MIT licensed. The Swift app, the Rust engine and the PDF writer all build from one repository with the Command Line Tools.

Install in one line.

Two paths: the native Mac app, or just the engine + CLI for macOS or Linux.

Mac app
$ curl -fsSL https://flash-tex.github.io/flashtex/install.sh | sh
Engine + CLI
$ curl -fsSL https://flash-tex.github.io/flashtex/install-cli.sh | sh