Tech News
← Back to articles

I wrote my PhD Thesis in Typst

read original related products more articles

I wrote my PhD Thesis in Typst

I recently submitted my PhD thesis, and while waiting for the physical copies to get printed I thought I'd write about something you (hopefully) wouldn't notice when reading it. I wrote it in Typst, not LaTeX. In this post I will talk a bit about what went well and what didn't.

Typst (https://typst.app/) is a modern take on a typesetting language that I think has a real shot at dethroning LaTeX. I would describe the language as a mix of markdown and dynamically typed Rust, which may sound weird but is a really nice fit. Day-to-day document writing being markdown-like is very comfortable (certainly much nicer than littering your writing with \ ). The scripting language is powerful, well thought out, and makes it very easy to jump between code and typesetting. For example

Produces

This is bold text. The sum of [1, 2, 5, 8] is 16

In the rest of this post, I will talk about some of the things I liked and disliked about Typst while writing the thesis.

The good

Compile times

The thing that pushed me over the edge to try Typst for my thesis was a friend telling me his LaTeX thesis took 90 seconds to compile towards the end. I am far too easily distracted to tolerate 90 second compile times when I'm making small changes. The Typst compiler is fast, on small-medium sized documents it compiles fast enough to do live writing in the PDF preview. As my thesis grew beyond 150 pages, compile times dropped a bit. Clean builds take about 15 seconds, but it also does incremental compilation so for content changes, it is still nearly instant, for local layout changes it takes a second or two. Even for large global template changes, 10 seconds is a whole lot better than 90 seconds, and I am confident that being able to iterate on layout and style 9 times faster produced a nicer looking result in the end.

The language

... continue reading