This feature currently doesn't work well for me, as I tend to write long-form posts with a larger amount of headings. The generated table of contents would take up the entire screen in that case, unfortunately. I'd fix it with CSS, but the one person I got to sign up here didn't use my referral link, so unfortunately it's not an option for me 馃槄 It would be really cool if you could make it (optionally) collapsed by default as plain sticky element (like how it appears when you scroll down), or better yet could instead display it off to the side while the page is wide enough. A few notes about the current implementation: There's currently a styling bug where some of the clickable header styling still applies even while the list is always-visible, like the pointer cursor and "button" here. It would also be great if, instead of using nested <div> s, you could use a <nav> and <details> element. That would work without JavaScript and is better for accessibility by default (though since you'd have multiple <nav> s then, please consider labelling them ).