Typst replaces TeX commands with one markup and scripting language
Typst compiles its own plain-text document format into finished output. Common work uses lightweight markup for headings and emphasis, while functions, set rules, show rules, and embedded expressions take over when a layout needs logic. Math, tables, citations, bibliographies, figures, and custom fonts live in the same language. That makes the source easier to read than a typical LaTeX file without reducing every document to a fixed Markdown theme.
Version 0.15.1 is a serious document compiler rather than a thin template wrapper. The CLI can compile a file, watch it for changes, list discovered fonts, add project font directories, and update itself when installed from an official release. Typst Universe provides community packages and templates. The repository is Apache-2.0 licensed, so a company can run and modify the compiler locally without buying access to the hosted editor.
The CLI owns local compilation, while collaboration lives in the web app
The README's basic route is refreshingly direct: install a release binary or package, then run typst compile file.typ. A watch command keeps a preview current through incremental compilation. Homebrew, Winget, Snap, Nix, Cargo, Docker, and downloadable archives are documented options. Package-manager releases may lag, a warning worth taking seriously when several authors must produce identical output. Pin the compiler instead of trusting whatever version happens to be on each laptop.
Collaboration is a different product boundary. The open repository contains the compiler and command-line interface, while Typst's online editor supplies the browser writing experience. A community language server, Tinymist, connects the language to editor extensions for completion and preview. Teams choosing the local path must assemble their own Git workflow, review process, preview setup, and artifact publishing. The compiler does not turn shared editing into an on-premise Google Docs replacement.
What happened when we ran it
Our sandbox installed 457 Rust packages in 56 seconds, then completed the build in 654 seconds. That is nearly 11 minutes of compilation on 3 CPUs with 12 GB of RAM. The checked-out commit was 26e924d, and the source tree measured 10.8 MB before dependencies. A project user should start with a binary or container; the source route makes more sense for contributors and organizations that must produce their own compiler artifact.
Cargo test finished in 15 seconds with 42 passed and 0 failed out of 42. Those numbers cover the test command exposed by the harness for this checkout. They do not establish document rendering speed, PDF fidelity across a private template archive, or compatibility with every community package. Our run did establish that install, build, and tests all completed in the fresh unprivileged Debian container.
The repository itself held 2,861 files and roughly 162,794 lines of source. We found 3 CI workflow files, a Dockerfile, and a tests directory. Those are useful maintenance signals, particularly for a compiler where layout regressions can be subtle. The 654-second build remains the practical warning: cache Cargo artifacts in CI, and avoid rebuilding the compiler merely to turn a .typ file into a PDF.
Typst 0.15.1 still has HTML accessibility gaps
PDF is the safer center of gravity. The project documents PDF, PNG, SVG, and newer HTML-related work, but open issue 8823 demonstrates a specific HTML problem in Typst 0.15.1: figure(alt:) produces alternative text in tagged PDF and discards it in HTML. Issue 8842 separately asks for ARIA role support in typed HTML export. A team with an accessibility requirement should test the generated target with its own checker rather than infer parity between formats.
Interactive forms are another boundary. Issue 4368 remains an open RFC for PDF text fields, list boxes, checkboxes, and radio buttons. If a workflow needs readers to fill and submit a generated PDF, Typst cannot be selected on the strength of that proposal. Generate a static document with Typst, or choose a tool whose released feature set includes the required annotations.
A 1,291-item queue comes with current maintainer activity
GitHub reported 55,932 stars and 1,291 open issues and pull requests. The combined count is large, yet it sits beside clear signs of work: the last push was September 9, 2026, and recently updated items included HTML accessibility, CJK spacing, font outlines, and documentation fixes. That queue should be read as the cost of a popular compiler with a wide surface, not as 1,291 confirmed bugs.
The latest release was v0.15.1 on July 17, 2026. Its notes contain fixes for math alignment, operator positioning, multi-page list gaps, SVG formatting, watch-server content types, and CLI exit codes. The short interval between that release and the September 9 push shows ongoing development. Since the project remains below 1.0 and output details change, production templates still deserve a pinned version and a visual regression set.
Typst is best for new document systems that can own their templates
Adoption is easiest when the team controls the document source and output contract. A new report generator, technical handbook, course pack, or research workflow can benefit from readable markup and reusable functions. Existing LaTeX estates face a different calculation: years of classes, BibTeX habits, package assumptions, and publisher requirements do not transfer just because Typst's syntax is friendlier. Migration means rebuilding and comparing templates, not swapping one compiler command.
Our 42 passing tests make Typst easy to trial, and the 654-second source build makes the distribution choice equally easy: use an official binary unless compiler changes are the job. Pin v0.15.1 or the release you approve, vendor the fonts and assets your output depends on, then compare PDFs page by page. For HTML accessibility or interactive PDF forms, the current issue record gives a competent team a reason to wait or keep another tool in the pipeline.

