This is my personal site at storopoli.com.
It is built with Haskell, Hakyll, and the TufteCSS theme, in honor of the great statistician and visual displayer of information Edward Tufte.
My whole setup is Nix-based. So you just need to install Nix and run the following command:
nix develop . --command just build
By default, all JavaScript1 is disabled and I will die on this hill.
Syntax highlighting is done by Pandoc and automatically switches between light and dark themes. I am a Gruvbox maximalist and use it for everything for years.
Citations are done using BibTeX
which is handled by Pandoc
under the hood.
Just update the [blog/bib/bibliography.bib
] file
and reference them in posts using the Pandoc citation syntax:
This is a valid claim [@referenceYYYY].
I was heavily inspired by Tony Zorman's BibTeX integration.
Math support is all rendered during static site compilation
by KaTeX
under the hood, and anything between $
and $$
will be rendered as inline or equation math
with no JavaScript.
Hooray!
Again Tony Zorman's KaTeX integration
for the rescue.
Check all the supported functions in KaTeX documentation.
Posts automatically generate a table of contents from their headers. The ToC is responsive and switches between light and dark themes to match the site's overall design.
By default, all posts with headers will display a ToC. You can control this behavior using metadata in your post's front matter:
---
title: "My Post"
# Disable ToC for this post
no-toc: true
---
---
title: "Research Post"
# Set ToC depth (default: 3 levels)
toc-depth: 2
# Add References section to ToC if using bibliography
bib: true
---
The ToC appears between the post metadata and content, with automatic anchor links for easy navigation.
The code is MIT and the content is Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International.
Footnotes
-
JavaScript is a security issue. JavaScript enables remote code execution. The browser is millions of lines of code, nobody truly knows what is going on, and often has escalated privileges in your computer. ↩