I'm currently working on my fourth book produced using Typst, and it has been nothing but amazing. LLMs struggle with Typst a bit but other than that it has been an absolute joy to work with.
I have a pretty good workflow set up for publishing these books, which are mostly collections of student essays. I use Pandoc to convert the students' Word documents into Typst, then unify the formatting, styles, and headers (mostly via LLMs). From there, I generate both a nice digital PDF and a print-ready PDF using Typst, and then use Pandoc again to convert the Typst into what ultimately becomes an EPUB.
It all works quite beautifully. Most of the challenges I've run into are related to Typst features that don't map cleanly to Pandoc, so I end up adding a few funky conditionals so those features aren't hit when converting via Pandoc. sys.inputs makes that very easy https://github.com/jgm/pandoc/issues/11588
I had the same experience as the root commenter. Sometimes ChatGPT seems to generate invalid typst code that doesn’t even compile. Maybe the syntax changed and it did work at some point but some stuff looked so wrong that I would guess it just doesn’t have enough training data for proper typst generation without feeding examples into the context first.
To produce a pdf, pandoc uses typst, pdfroff, lualatex, whatever you please. There is no particular connection to latex. The idea exhibits complete ignorance.
I'm sure everyone has their own use case but I use typst for resumes or other documents that I want to keep in git but I need to share with others using PDF.
I use typst in visual studio code using tiny mist extension. I can generate PDF without installing any new software other than vscode which I already have and the tiny mist extension. The live preview is also nice.
The one thing that bothers me is the dollar sign and the hash sign so to write something like saved $50 million using c#, I write something like saved USD 50 million using #csharp
Markdown has the same class of issue and resolves it the same way you would with Typst: The escape character \. You instead write saved \$50 million using C\#.
Markdown is for "I want to type semantic content and get a vaguely reasonable result". Typst is for typesetting documents where you care what the output looks like, and where you want a print-quality PDF (or, in the future, also HTML; currently still WIP).
Typst does typesetting like TeX (or InDesign for a WYSIWYG alternative), neither org-mode nor markdown has a rich enough formatting language for general typesetting, like if you want to make a flyer for a concert, a brochure or a comic book.
I have used many things to generate print documents and layouted PDFs:
- Adobe Illustrator
- Adobe InDesign
- Markdown with and without custom themes
- Markdown compiled to .idml to integrate into InDesign
- HTML and CSS
- LATeX
Typst is so far one of the most enjoyable ways of programmatically generating layouted stuff I ever used.
The only thing missing is a good Desktop editor that allows dumb users to double-click a .typ file and see/edit the file instead of having to setup VSCode, plugins etc.
I have nothing but great things to say about typst, and this is my personal favorite from this release:
"A single document can now contain multiple bibliographies"
I'm currently working on my fourth book produced using Typst, and it has been nothing but amazing. LLMs struggle with Typst a bit but other than that it has been an absolute joy to work with.
I have a pretty good workflow set up for publishing these books, which are mostly collections of student essays. I use Pandoc to convert the students' Word documents into Typst, then unify the formatting, styles, and headers (mostly via LLMs). From there, I generate both a nice digital PDF and a print-ready PDF using Typst, and then use Pandoc again to convert the Typst into what ultimately becomes an EPUB.
It all works quite beautifully. Most of the challenges I've run into are related to Typst features that don't map cleanly to Pandoc, so I end up adding a few funky conditionals so those features aren't hit when converting via Pandoc. sys.inputs makes that very easy https://github.com/jgm/pandoc/issues/11588
The books in question: https://thelabofthought.co/shop
"LLMs struggle with Typst a bit"
My experience is the opposite. Especially when instructing the LLM to do very fine grained and detailed adjustments. Works like a charm.
Typst is my go-to format if I need more than plain text.
I had the same experience as the root commenter. Sometimes ChatGPT seems to generate invalid typst code that doesn’t even compile. Maybe the syntax changed and it did work at some point but some stuff looked so wrong that I would guess it just doesn’t have enough training data for proper typst generation without feeding examples into the context first.
HTML support just keeps getting better and better!
[1]: https://github.com/typst/typst/pull/7436Typst has probably saved us thousands of dollars generating PDF documents programmatically.
You might already do this, but great opportunity to support them with a donation.
As a non-developer who really only uses computers to write and produce documents, why would I use typst over org-mode or $your_fave_markdown + pandoc?
You can pass a JSON structure to a Typst document and render it however you like. No need for a templating engine or anything like that.
Pandoc probably uses latex under the hood, and Typst is order of magnitudes faster. Also, much better error messages.
Typst is vastly superior for usage in automation or when developing document classes.
If that's not your use case, don't bother.
To produce a pdf, pandoc uses typst, pdfroff, lualatex, whatever you please. There is no particular connection to latex. The idea exhibits complete ignorance.
I'm sure everyone has their own use case but I use typst for resumes or other documents that I want to keep in git but I need to share with others using PDF.
I use typst in visual studio code using tiny mist extension. I can generate PDF without installing any new software other than vscode which I already have and the tiny mist extension. The live preview is also nice.
The one thing that bothers me is the dollar sign and the hash sign so to write something like saved $50 million using c#, I write something like saved USD 50 million using #csharp
And near the top I add a variable like this
Markdown has the same class of issue and resolves it the same way you would with Typst: The escape character \. You instead write saved \$50 million using C\#.
Markdown is for "I want to type semantic content and get a vaguely reasonable result". Typst is for typesetting documents where you care what the output looks like, and where you want a print-quality PDF (or, in the future, also HTML; currently still WIP).
Typst does typesetting like TeX (or InDesign for a WYSIWYG alternative), neither org-mode nor markdown has a rich enough formatting language for general typesetting, like if you want to make a flyer for a concert, a brochure or a comic book.
I pass from markdown to typst pdf via pandoc a few times a day. From that point of view it is just an alternative to latex or roff, e.g.
pandoc -r markdown -w pdf --pdf-engine=typst input.md -o output.pdf
I use pandoc + typst to render beautiful documents from Markdown. Works really, really well.
It produces beautiful PDF output from org-mode!
Compilation speed on typst is crazy
Typst killed the invoice industry
> A single document can now contain multiple bibliographies
I have been waiting on this one for years now. Great work.
Reminder that it's 2026 and batch-mode typesetting seems an oddly low bar for what we can get from a computer.
Tree-structured documents in a live (WYSIWYG) typesetter with a programmable editor are possible, as is demonstrated by https://texmacs.org (https://www.texmacs.org/tmweb/home/videos.en.html if you don't have it installed).
see also: https://typst.app/blog/2026/typst-0.15
I have used many things to generate print documents and layouted PDFs:
- Adobe Illustrator - Adobe InDesign - Markdown with and without custom themes - Markdown compiled to .idml to integrate into InDesign - HTML and CSS - LATeX
Typst is so far one of the most enjoyable ways of programmatically generating layouted stuff I ever used.
The only thing missing is a good Desktop editor that allows dumb users to double-click a .typ file and see/edit the file instead of having to setup VSCode, plugins etc.