What Typst Does
- Markup — lightweight syntax for headings, emphasis, lists, links
- Math —
$ ... $for equations with intuitive syntax - Scripting — built-in programming language (variables, loops, functions)
- Templates — create and share reusable document templates
- Bibliography — BibTeX and Hayagriva support
- Figures and tables — numbered, captioned, cross-referenced
- Incremental compilation — sub-second rebuilds
- Error messages — human-readable with line/column info
- PDF output — production-quality PDF
- typst.app — collaborative online editor
Architecture
Rust compiler: source → AST → layout → PDF. Incremental: only recomputes changed pages. Scripting engine evaluates Typst code at compile time for dynamic content generation. Font subsetting and PDF/A compliance built in.
Self-Hosting
CLI tool + optional typst.app (collaborative SaaS).
Key Features
- Millisecond compilation
- Readable markup syntax
- Built-in math typesetting
- Scripting language
- Templates and packages
- Bibliography support
- Friendly errors
- PDF output
- Live watch mode
- Collaborative editor (typst.app)
Comparison
| System | Compilation | Syntax | Scripting |
|---|---|---|---|
| Typst | Milliseconds | Easy | Built-in |
| LaTeX | Seconds-minutes | Complex | TeX macros |
| Markdown + Pandoc | Fast | Simple | Limited |
| Asciidoc | Fast | Medium | Macros |
| Groff | Fast | Arcane | Macros |
FAQ
Q: Can it replace LaTeX? A: For 80% of academic writing, yes. A few advanced LaTeX features (specific journal templates, complex TikZ graphics) are not yet supported. Typst is catching up fast.
Q: How is math formula support?
A: Excellent. The syntax is more intuitive than LaTeX: $sum_(i=1)^n i = (n(n+1))/2$, no need to memorize \frac{}{}.
Q: Template ecosystem?
A: typst.app has a community template library (IEEE, ACM, thesis, resume, letter). You can also customize and share your own .typ templates.
Sources
- Docs: https://typst.app/docs
- GitHub: https://github.com/typst/typst
- License: Apache 2.0