As a former software developer, now turned student (studying theology while I train to become a pastor), Typst has been great for writing my dissertation with one notable exception: it really doesn't handle footnotes well. Specifically, see:
Discursive footnotes do not really work when including bibliography references. I've also hit other issues, like footnotes appearing a page before the text they are linked from.
It's a real shame, as otherwise it's great software. I suspect footnotes are currently buggy because most users are currently from the science world and use inline referencing instead.
I'm really hoping this is fixed soon. (And once I hit my current deadline this week, I'll take a look at it myself.)
But at the moment, a big caveat for anyone working in the humanities / who uses e.g. Chicago-style footnotes.
Footnotes are very hard to typeset. They’re up there with tables as the biggest headache for any typesetter.
Interesting career path from developer -> theology student -> pastor. Probably a more stable career choice these days.
really interested to hear about your transition from developer to student. i'd love to talk to you. my email is in the about on my profile.
Referencing files somewhere in or below a document's root from a package has always been pretty convoluted. This should simplify setups like mine that depend on local custom packages.
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
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.
My experience is the same. It was agonizing directing Claude Code (Opus 4.7 at that time) to create a (non-mathematical) preso using LaTex. After banging my head against that wall for too long, I asked why this process (placing entities on the output PDF page according to specific requirements) was so error prone, and received the answer "LaTex is really the wrong tool for this job". I chose Typst from among the offered alternatives, and it has been a MUCH better experience.
I switched my resume to Typst too.
Using skills can help a lot. They can guide agents to not use LaTeX syntax (a common problem) and provide access to the full documentation.
Frontier LLMs work great with Typst. (Have published multiple books using it).
I’ve been using Typst pretty heavily for the past few months after a few years of LaTeX, and I’ve had a similar experience. I do really love Typst though. It feels nimble, pleasant to work with and like a huge improvement over LaTeX in a lot of ways.
That said, LLMs have been noticeably better with LaTeX than with Typst for me. Typst works fine for the basics: loops, functions, small layout tweaks and that kind of thing. The problems mostly show up with more niche features.
What helped me was pointing the LLM to the current Typst docs, either the website or as they mention in their blog about the new update they also have a PDF export of the docs now (https://github.com/typst/typst/releases/download/v0.15.0/typ...). The docs are very good, and I suspect older training data plus Typst’s breaking changes are part of the problem.
One downside is that because I started using Typst with LLMs right away, I got a big head start but never became fully fluent in the language. I still find myself going back to the docs, the internet or an LLM more often than I’d like.
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"
HTML support just keeps getting better and better!
Mathematical equations are now automatically exported to MathML (thanks to @mkorje)[1]
Oh, that’s very exciting! That probably improves the path from Typst to EPUB considerably!
Typst is great. I think they'll catch up to LuaTeX in terms of typographic quality in near future. But Typst is for typesetting; it's essentially a programming language for layout. If you compare it to e.g. Asciidoc, the latter is for content and semantics. We need both. But Asciidoc has unneccessary complexity and ambiguity, and the results are often surprising. So I made an unambiguous, deterministic subset of Asciidoc which I now use for most of my specs and which can be parsed by a single recursive descent parser and generate Typst. It's still work in progress, but if anyone is interested, here is the link: https://github.com/rochus-keller/leandoc/.
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.
#set figure(placement: none)
#show figure: set block(breakable: true)
#set table(
inset: 5pt,
stroke: 0.5pt + rgb("#cccccc"),
)
#show table: set text(size: 8pt)
#show table.cell: it => {
set text(hyphenate: true)
show raw: set text(size: 6.5pt)
it
}
#set par(justify: true)
#show heading: it => block(sticky: true, it)
To produce a pdf, pandoc uses typst, pdfroff, lualatex, whatever you please. There is no particular connection to latex. The idea exhibits complete ignorance.
There was probably a nicer way of expressing this, but yes, ideally I will continue to use Org mode for my documents and substitute typst for LaTex when exporting to pdf.
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
#let csharp = "C#"
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\#.
I never understood why markdown authors are so insistent on using a single $ to denote math. Math is outside the commonmark spec so this is entirely up to plugin authors.
I am an author of a fairly popular (and early) math plugin for markdown and I resisted (albeit not very hard). I made $$ the default delimiter but I noticed very soon that my users hated it, and finally I gave up and made $ the default delimiter.
What I would have preferred is for $ to behave exactly like backticks (except a minimum of two to start inline math) So you could do stuff like $$ f $ x $$ to render f $ x meaning function f applied with x. And write stuff like:
$$$optional-tag
f $ x
$$$
for block math. I even wrote a competing plugin to my older one where I do this, but I don‘t think anybody uses is, because most people writing math in markdown are expecting it to behave exactly like latex.
I personally like using code blocks with math as the language
Gives you a nice, block level element, and it's easy to reason about
I don’t really like that either since code blocks are supposed to be verbatim, and the language is only supposed to be a hint for syntax highlighting. Additionally you also occupy the first tag which may be an issue when e.g. writing a preample for a latex renderer (or if you want to pick a different renderer).
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 tried using markdown+pandoc for my notes for a while, but I couldn't figure out even the most basic things, mostly because of the dozens of incompatible flavors; in no particular order:
- formatting math blocks is mostly not a thing; some formatters will straight up break the document depending on the flavor you use
- lsp
- live preview; you could use e.g. a neovim plugin for that, but it's built on top of mathjax
- pandoc isn't even a single flavor, as you have a bunch of feature flags and multiple ways to do the same thing
- rendering with pandoc is pretty slow even for a few pages of lecture notes (especially compared to typst)
- latex (required by pandoc) is huge, meanwhile typst binary was something like 50M last time I checked
- syntax highlighting: markdown treesitter grammar only supports the common extensions, e.g. the esoteric latex block variants break the entire document
I guess if I didn't need math rendering, the only major complaint I'd have is performance, but at that point .txt is enough
Latex is in no sense required by pandoc and never has been, not ten years ago, not twenty years ago. Everything you are writing is deep conceptual confusion from top to bottom. You might as well say it has required Microsoft Word since the docx readers and writers came out.
Latex is a typical route to produce pdfs according to your specification, but typst is what I use; occasionally groff. I use latex when what I am typesetting uses greek, arabic or hebrew text, but only because I haven't yet bothered to learn the typst approach to them.
only if you don't care about the output and half the features; otherwise you can just use "mv" to compile your documents to .txt
“latex (required by pandoc)”
No.
`--pdf-engine=typst`
but then you're limited to an undocumented subset of pandoc markdown
I don’t know what this means, but please don’t explain.
applicative’s comment is correct. Every one of your bullet points is wrong, except perhaps the one about treesitter highlighting, but what should one expect? Why should a Markdown parser know anything about arbitrary Markdown extensions?
> please don't explain
why are you even talking to me?
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).
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
I've been using LaTeX for math for over a decade now. I'm pretty happy with it frankly, but there are major pain points in the compilation time and whenever it's time to interface with the language programmatically. Typst is, frankly, awesome in that regard.
However, I really dislike the 'magic' in the math mode syntax, and I think dropping backslashes (more generally, a delineator) for commands was a mistake. Those aren't blockers though, and I think the org is largely making good decisions. I'm really looking forward to the day I can write research in it!
I think all that's remaining is time in the community and stability. Once journals begin accepting it, I know I'll definitely try to submit in it.
I've heard this from other LaTeX veterans, but as someone that has never done any LaTeX himself and was scared by all those backslashes and braces, the simple C-like syntax is a blessing.
I’ve been using Typst lately and it has been great. I’ve made an exam template for my university and made an export feature so that I could generate the exam in the json format that our online exam system (WISEflow) expects, with support for multiple choice and essay style questions.
It is so snappy and with great error messages. I encourage people to try it out. The typst tutorial is very approachable. Thanks to the Typst devs for this great piece of software.
I became a Typst user earlier this week, and it has been a delightful experience. It did not take me long at all to get up to speed. I have used LaTeX before, but that was over 20 years ago.
I’m doing some postgraduate where I need to submit a paper written in the two column IEEE style. I’m pretty sure I spent 40% of my time last time fighting with a Word template, rather than producing content.
I've switched form LaTeX to Typst for all my informal/semi-formal writing and it's a delight to work with. I hope I'll be able to use it for more formal documents in the future (conference/journal papers, slides for high stakes presentations)
Typst killed the invoice industry
I do all my invoicing and SOW proposals with Typst. As well as slideshows and books...
[deleted]
How so?
Typst and its json based templating makes it easy to create good looking invoice PDFs for free.
The open-source solutions we tried before were annoying (Used LaTeX, wkhtmltopdf, weasyprint in production and evaluated several more). To avoid that pain we asked some commercial PDF generator software for a quote, but their per document pricing was insane.
> Layout convergence issues now result in detailed diagnostics that help pin down the cause
Yes!
This is awesome! I’ve been excited about the new bundle feature for months.
I use typst to format sheet music. Given a folder of PDFs, I currently have a script that generates a booklet of music for each person in the ensemble. Hopefully now I can just run a single typst file which outputs multiple PDFs.
Curious as to why typst over something like Lilypond, which is built around music
For composition I use musescore.
In my case, I’m not actually arranging or writing music - I’m just taking existing music PDFs, separating pages, and creating new PDFs along with page numbers and table of contents. The use case is to have a nice booklet of music for an upcoming performance.
Cool project. I made something similar to programmatically generate my CV, but using LaTeX with a LuaLaTeX backend. It works, but it is really slow and has a lot of dependencies.
I’m seriously considering rewriting it in Typst at some point. It probably would not be that hard, and I’d likely get much faster builds with far fewer dependencies.
Everything for typst was generated via LLM. The template itself takes json as input and then uses the typst template language to render. It works very very well.
An LLM turned all my Latex projects to Typst and I'm not looking back.
Much easier stack (I stopped installing Latex-stacks myself, and switched to Overleaf, because it was just too finicky). Much simpler language. Just works.
Typst 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.
Is this because it has replaced paid SaaS for you?
Is there anything similar to (or better than) overleaf for collaborating on typst docs?
To be clear, overleaf isn’t all that great but I sometimes work with groups that are used to it.
Have conferences that traditionally accepted latex source (and specified latex templates) started accepting typst as well?
> Is there anything similar to (or better than) overleaf for collaborating on typst docs? To be clear, overleaf isn’t all that great but I sometimes work with groups that are used to it.
Yes, https://typst.app/ is the official Typst app (part of how they make money).
> Have conferences that traditionally accepted latex source (and specified latex templates) started accepting typst as well?
Very few by now.
I'm excited to see the HTML generation support in typst continuing to get better - the fact that they're generating their own online documentation with typst now is very encouraging.
Typest is amazing, Claude Code + Opus 4.8 knows how to use it, but I found that Claude by default is crap at designing even a reasonably formatted PDF. E.g. Claude sets the line height to be so small, all the lines are squished together, and a 1-pager PDF is half blank.
I see many folks saying you're producing beautiful PDFs. How are you dealing with design?
Have you tried showing Claude your output, or simply telling it to look at the PNG output? Together with some design or frontend skill you should get reasonable results.
My Claude is looking into the PDFs, and makes changes, then looks again, etc. I did not even tell it to. It just knows how to use it all...
How's Typst with tagged PDF (particularly math in tagged PDF)?
Recent LaTeX versions started to be able to do it, it'd be a shame if people started switching over just when LaTeX finally started pulling their accessibility act together.
Apparently Typst isn't supported by many journals, forcing LaTeX usage, anyone have experiences with this situation?
I still much prefer LaTeX actually, I don't feel like Typst improves over its main flaw, i.e. lack of consistency. One could argue that it's even more inconsistent. I really miss commands, \section for example clearly does what it says it does, while '=' is more nebulous. I don't like that instead of typing `\alpha+c` now I need to write `alpha + c` it blurs the line between what is a command and what isn't.
So imo in terms of scientific writing it's pretty off the mark
Most, if not all of these are just syntactic sugar. You can simply write `#heading()` instead. Although I'm not sure if there is an equivalent in math mode.
I spoke to the couple (it’s like a single married couple + a bunch of scripts they’ve wrote) who handle the formatting for a bunch of the programming language-related conferences around the world (and others too maybe) and they are interested in Typst and are looking into it! (They’re also super nice folks.)
> A single document can now contain multiple bibliographies
I have been waiting on this one for years now. Great work.
“batch-mode typesetting seems an oddly low bar for what we can get from a computer.”
I don’t know what this is intended to mean.
“a live (WYSIWYG) typesetter”
I don’t like this mode of interaction. No, thanks.
Typst is fast enough to provide a live preview, and I can use Vim or any editor I want, along with my choice of PDF viewer.
Almost exactly a year ago, I made the switch from generating LaTeX from markdown using pandoc to typst. Best decision I have ever made. I can actually write my own macros (both LaTeX and pandoc were a pain in the ass).
The ecosystem is not quite a mature as latex, however I can implement the things I need myself.
good timing, I just started learning Typst this weekend!
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.
As a former software developer, now turned student (studying theology while I train to become a pastor), Typst has been great for writing my dissertation with one notable exception: it really doesn't handle footnotes well. Specifically, see:
https://github.com/typst/typst/pull/8147
Discursive footnotes do not really work when including bibliography references. I've also hit other issues, like footnotes appearing a page before the text they are linked from.
It's a real shame, as otherwise it's great software. I suspect footnotes are currently buggy because most users are currently from the science world and use inline referencing instead.
I'm really hoping this is fixed soon. (And once I hit my current deadline this week, I'll take a look at it myself.)
But at the moment, a big caveat for anyone working in the humanities / who uses e.g. Chicago-style footnotes.
Footnotes are very hard to typeset. They’re up there with tables as the biggest headache for any typesetter.
Interesting career path from developer -> theology student -> pastor. Probably a more stable career choice these days.
really interested to hear about your transition from developer to student. i'd love to talk to you. my email is in the about on my profile.
So excited for the path type.
https://typst.app/docs/reference/foundations/path/
Referencing files somewhere in or below a document's root from a package has always been pretty convoluted. This should simplify setups like mine that depend on local custom packages.
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.
My experience is the same. It was agonizing directing Claude Code (Opus 4.7 at that time) to create a (non-mathematical) preso using LaTex. After banging my head against that wall for too long, I asked why this process (placing entities on the output PDF page according to specific requirements) was so error prone, and received the answer "LaTex is really the wrong tool for this job". I chose Typst from among the offered alternatives, and it has been a MUCH better experience. I switched my resume to Typst too.
Using skills can help a lot. They can guide agents to not use LaTeX syntax (a common problem) and provide access to the full documentation.
https://github.com/apcamargo/typst-skills/
Frontier LLMs work great with Typst. (Have published multiple books using it).
I’ve been using Typst pretty heavily for the past few months after a few years of LaTeX, and I’ve had a similar experience. I do really love Typst though. It feels nimble, pleasant to work with and like a huge improvement over LaTeX in a lot of ways.
That said, LLMs have been noticeably better with LaTeX than with Typst for me. Typst works fine for the basics: loops, functions, small layout tweaks and that kind of thing. The problems mostly show up with more niche features.
What helped me was pointing the LLM to the current Typst docs, either the website or as they mention in their blog about the new update they also have a PDF export of the docs now (https://github.com/typst/typst/releases/download/v0.15.0/typ...). The docs are very good, and I suspect older training data plus Typst’s breaking changes are part of the problem.
One downside is that because I started using Typst with LLMs right away, I got a big head start but never became fully fluent in the language. I still find myself going back to the docs, the internet or an LLM more often than I’d like.
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"
HTML support just keeps getting better and better!
[1]: https://github.com/typst/typst/pull/7436Oh, that’s very exciting! That probably improves the path from Typst to EPUB considerably!
Typst is great. I think they'll catch up to LuaTeX in terms of typographic quality in near future. But Typst is for typesetting; it's essentially a programming language for layout. If you compare it to e.g. Asciidoc, the latter is for content and semantics. We need both. But Asciidoc has unneccessary complexity and ambiguity, and the results are often surprising. So I made an unambiguous, deterministic subset of Asciidoc which I now use for most of my specs and which can be parsed by a single recursive descent parser and generate Typst. It's still work in progress, but if anyone is interested, here is the link: https://github.com/rochus-keller/leandoc/.
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.
you can tell pandoc to use typst as pdf-engine.
I use this command to create pdf from my md file.
That's the typst-header.typTo produce a pdf, pandoc uses typst, pdfroff, lualatex, whatever you please. There is no particular connection to latex. The idea exhibits complete ignorance.
There was probably a nicer way of expressing this, but yes, ideally I will continue to use Org mode for my documents and substitute typst for LaTex when exporting to pdf.
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\#.
I never understood why markdown authors are so insistent on using a single $ to denote math. Math is outside the commonmark spec so this is entirely up to plugin authors.
I am an author of a fairly popular (and early) math plugin for markdown and I resisted (albeit not very hard). I made $$ the default delimiter but I noticed very soon that my users hated it, and finally I gave up and made $ the default delimiter.
What I would have preferred is for $ to behave exactly like backticks (except a minimum of two to start inline math) So you could do stuff like $$ f $ x $$ to render f $ x meaning function f applied with x. And write stuff like:
for block math. I even wrote a competing plugin to my older one where I do this, but I don‘t think anybody uses is, because most people writing math in markdown are expecting it to behave exactly like latex.I personally like using code blocks with math as the language
Gives you a nice, block level element, and it's easy to reason about
I don’t really like that either since code blocks are supposed to be verbatim, and the language is only supposed to be a hint for syntax highlighting. Additionally you also occupy the first tag which may be an issue when e.g. writing a preample for a latex renderer (or if you want to pick a different renderer).
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 tried using markdown+pandoc for my notes for a while, but I couldn't figure out even the most basic things, mostly because of the dozens of incompatible flavors; in no particular order:
- formatting math blocks is mostly not a thing; some formatters will straight up break the document depending on the flavor you use
- lsp
- live preview; you could use e.g. a neovim plugin for that, but it's built on top of mathjax
- pandoc isn't even a single flavor, as you have a bunch of feature flags and multiple ways to do the same thing
- rendering with pandoc is pretty slow even for a few pages of lecture notes (especially compared to typst)
- latex (required by pandoc) is huge, meanwhile typst binary was something like 50M last time I checked
- syntax highlighting: markdown treesitter grammar only supports the common extensions, e.g. the esoteric latex block variants break the entire document
I guess if I didn't need math rendering, the only major complaint I'd have is performance, but at that point .txt is enough
Latex is in no sense required by pandoc and never has been, not ten years ago, not twenty years ago. Everything you are writing is deep conceptual confusion from top to bottom. You might as well say it has required Microsoft Word since the docx readers and writers came out.
Latex is a typical route to produce pdfs according to your specification, but typst is what I use; occasionally groff. I use latex when what I am typesetting uses greek, arabic or hebrew text, but only because I haven't yet bothered to learn the typst approach to them.
only if you don't care about the output and half the features; otherwise you can just use "mv" to compile your documents to .txt
“latex (required by pandoc)”
No.
`--pdf-engine=typst`
but then you're limited to an undocumented subset of pandoc markdown
I don’t know what this means, but please don’t explain.
applicative’s comment is correct. Every one of your bullet points is wrong, except perhaps the one about treesitter highlighting, but what should one expect? Why should a Markdown parser know anything about arbitrary Markdown extensions?
> please don't explain
why are you even talking to me?
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).
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
I've been using LaTeX for math for over a decade now. I'm pretty happy with it frankly, but there are major pain points in the compilation time and whenever it's time to interface with the language programmatically. Typst is, frankly, awesome in that regard.
However, I really dislike the 'magic' in the math mode syntax, and I think dropping backslashes (more generally, a delineator) for commands was a mistake. Those aren't blockers though, and I think the org is largely making good decisions. I'm really looking forward to the day I can write research in it!
I think all that's remaining is time in the community and stability. Once journals begin accepting it, I know I'll definitely try to submit in it.
I've heard this from other LaTeX veterans, but as someone that has never done any LaTeX himself and was scared by all those backslashes and braces, the simple C-like syntax is a blessing.
I’ve been using Typst lately and it has been great. I’ve made an exam template for my university and made an export feature so that I could generate the exam in the json format that our online exam system (WISEflow) expects, with support for multiple choice and essay style questions.
It is so snappy and with great error messages. I encourage people to try it out. The typst tutorial is very approachable. Thanks to the Typst devs for this great piece of software.
I became a Typst user earlier this week, and it has been a delightful experience. It did not take me long at all to get up to speed. I have used LaTeX before, but that was over 20 years ago.
I’m doing some postgraduate where I need to submit a paper written in the two column IEEE style. I’m pretty sure I spent 40% of my time last time fighting with a Word template, rather than producing content.
I've switched form LaTeX to Typst for all my informal/semi-formal writing and it's a delight to work with. I hope I'll be able to use it for more formal documents in the future (conference/journal papers, slides for high stakes presentations)
Typst killed the invoice industry
I do all my invoicing and SOW proposals with Typst. As well as slideshows and books...
How so?
Typst and its json based templating makes it easy to create good looking invoice PDFs for free.
The open-source solutions we tried before were annoying (Used LaTeX, wkhtmltopdf, weasyprint in production and evaluated several more). To avoid that pain we asked some commercial PDF generator software for a quote, but their per document pricing was insane.
> Layout convergence issues now result in detailed diagnostics that help pin down the cause
Yes!
This is awesome! I’ve been excited about the new bundle feature for months.
I use typst to format sheet music. Given a folder of PDFs, I currently have a script that generates a booklet of music for each person in the ensemble. Hopefully now I can just run a single typst file which outputs multiple PDFs.
Also using it to generate printable programs for concerts: https://concert-programs.projects.jaygoel.com/
Curious as to why typst over something like Lilypond, which is built around music
For composition I use musescore.
In my case, I’m not actually arranging or writing music - I’m just taking existing music PDFs, separating pages, and creating new PDFs along with page numbers and table of contents. The use case is to have a nice booklet of music for an upcoming performance.
Cool project. I made something similar to programmatically generate my CV, but using LaTeX with a LuaLaTeX backend. It works, but it is really slow and has a lot of dependencies.
I’m seriously considering rewriting it in Typst at some point. It probably would not be that hard, and I’d likely get much faster builds with far fewer dependencies.
Everything for typst was generated via LLM. The template itself takes json as input and then uses the typst template language to render. It works very very well.
An LLM turned all my Latex projects to Typst and I'm not looking back.
Much easier stack (I stopped installing Latex-stacks myself, and switched to Overleaf, because it was just too finicky). Much simpler language. Just works.
Typst 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.
Is this because it has replaced paid SaaS for you?
Is there anything similar to (or better than) overleaf for collaborating on typst docs? To be clear, overleaf isn’t all that great but I sometimes work with groups that are used to it.
Have conferences that traditionally accepted latex source (and specified latex templates) started accepting typst as well?
> Is there anything similar to (or better than) overleaf for collaborating on typst docs? To be clear, overleaf isn’t all that great but I sometimes work with groups that are used to it.
Yes, https://typst.app/ is the official Typst app (part of how they make money).
> Have conferences that traditionally accepted latex source (and specified latex templates) started accepting typst as well?
Very few by now.
I'm excited to see the HTML generation support in typst continuing to get better - the fact that they're generating their own online documentation with typst now is very encouraging.
Typest is amazing, Claude Code + Opus 4.8 knows how to use it, but I found that Claude by default is crap at designing even a reasonably formatted PDF. E.g. Claude sets the line height to be so small, all the lines are squished together, and a 1-pager PDF is half blank.
I see many folks saying you're producing beautiful PDFs. How are you dealing with design?
Have you tried showing Claude your output, or simply telling it to look at the PNG output? Together with some design or frontend skill you should get reasonable results.
My Claude is looking into the PDFs, and makes changes, then looks again, etc. I did not even tell it to. It just knows how to use it all...
How's Typst with tagged PDF (particularly math in tagged PDF)?
Recent LaTeX versions started to be able to do it, it'd be a shame if people started switching over just when LaTeX finally started pulling their accessibility act together.
Apparently Typst isn't supported by many journals, forcing LaTeX usage, anyone have experiences with this situation?
I still much prefer LaTeX actually, I don't feel like Typst improves over its main flaw, i.e. lack of consistency. One could argue that it's even more inconsistent. I really miss commands, \section for example clearly does what it says it does, while '=' is more nebulous. I don't like that instead of typing `\alpha+c` now I need to write `alpha + c` it blurs the line between what is a command and what isn't.
So imo in terms of scientific writing it's pretty off the mark
Most, if not all of these are just syntactic sugar. You can simply write `#heading()` instead. Although I'm not sure if there is an equivalent in math mode.
I spoke to the couple (it’s like a single married couple + a bunch of scripts they’ve wrote) who handle the formatting for a bunch of the programming language-related conferences around the world (and others too maybe) and they are interested in Typst and are looking into it! (They’re also super nice folks.)
> A single document can now contain multiple bibliographies
I have been waiting on this one for years now. Great work.
see also: https://typst.app/blog/2026/typst-0.15
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).
“batch-mode typesetting seems an oddly low bar for what we can get from a computer.”
I don’t know what this is intended to mean.
“a live (WYSIWYG) typesetter”
I don’t like this mode of interaction. No, thanks.
Typst is fast enough to provide a live preview, and I can use Vim or any editor I want, along with my choice of PDF viewer.
Almost exactly a year ago, I made the switch from generating LaTeX from markdown using pandoc to typst. Best decision I have ever made. I can actually write my own macros (both LaTeX and pandoc were a pain in the ass).
The ecosystem is not quite a mature as latex, however I can implement the things I need myself.
If you are on the fence, do yourself a favor and try it. There is a VS Code extension https://marketplace.visualstudio.com/items?itemName=myriad-d....
good timing, I just started learning Typst this weekend!
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.
[flagged]
What does this have to do with TFA?