How I Made This Site
This site uses:
 Jekyll
 GitHub Pages
 MathJax for math formatting
 Custom sed script for taking Notionexported pages and fixing the math formatting
 Jekyll Collection for talks and pubs
Steps

Follow the Jekyll docs to install Jekyll and all its dependencies. Much easier than the GitHub docs.

Once you have a site working locally, then follow the GitHub docs for setting up pages.

From this SO answer to enable MathJax you have to add the JS for it in your head. I wrapped it in a Liquid ifstatement so that it’s only loaded when needed, but that’s optional.

Follow Daniel Sieger’s guide to make a publications list from a collection.
Notion Export
For some reason, Notion exports to markdown using a single dollar sign ($) for inline formulas. Unfortunately, this kinda breaks everything, since most markdown expects a dollar sign to be just a dollar sign, and a doubledollar sign for math.
Fortunately, sed
exists to solve this problem. Here’s a simple script that fixes it.
s/\([^\$]\)\$\([^\$]\)/\1$$\2/g
s/\([^\$]\)\$\([^\$]\)/\1$$\2/g
s/\([^\$]\)\$\\/\1$$\\/g
s/\([^\$]\)\$$/\1$$/
s/^\$\([^\$]\)/$$\1/