Refactoring my website to use Quarto
After switching my website’s build from Jekyll to Nikola in 2024 (more details here) I’ve decided to switch again to Quarto. Unlike Nikola or Hugo, Quarto is designed for scientific publishing, so equations, cross-references, and code cells are all first-class citizens. See my parallel blog post about Quarto for more about why I like it.
Technically speaking, this was much more challenging than my migration from Jekyll to nikola (where most of the underlying markdown files remained unchanged). However, the actual process was fairly smooth since I used Claude code the whole time. Claude:
- Architected the entire transition.
- Wrote custom migration scripts to, e.g., pull nikola tags out of my posts in
ipynbformat. - Did a lot of tedious work like going through each post and looking for math with old
\(syntax. - Wrote a custom postprocessing script to generate page redirects (I try to not break links to old pages that I’ve since moved around).
- Helped fix some difficult issues involving things I had very little experience with1
This was critical- I definitely could not have done the migration in a reasonable amount of time without Claude (I would have had to do many tedious things myself, and gotten stuck on many bugs where my HTML knowledge was insufficient).
Hopefully (🤞) this is the final form of my website- I shouldn’t need any more features that Quarto doesn’t offer.
Footnotes
Examples:
- images not rendering properly
- using
iframehtml environments to get plotly plots to load in one of my posts - Figuring out why youtube embeddings weren’t working (turns out youtube embeds don’t work on local html files with
file://locations)
Citation
@online{tripp2026,
author = {Tripp, Austin},
title = {Refactoring My Website to Use {Quarto}},
date = {2026-05-10},
url = {https://austintripp.ca/blog/2026-05-10-quarto-website/},
langid = {en}
}