diff --git a/blog/static/css/main.css b/blog/static/css/main.css
index 74f058bd..7e04ef97 100644
--- a/blog/static/css/main.css
+++ b/blog/static/css/main.css
@@ -172,6 +172,10 @@ aside#all-posts-link {
}
@media (min-width: 80rem) {
+ #toc-inline {
+ display: none;
+ }
+
#toc-aside {
display: block;
width: 12rem;
diff --git a/blog/templates/macros.html b/blog/templates/macros.html
index 0e6622da..85909670 100644
--- a/blog/templates/macros.html
+++ b/blog/templates/macros.html
@@ -17,3 +17,19 @@
async>
{% endmacro utterances %}
+
+{% macro toc(page) %}
+ Table of Contents
+
+ {% for h2 in page.toc %}
+
+ {% for h3 in h2.children %}
{% endif %}
+