What is in this sample

  • Gutenberg Table of Contents block
  • [tocguide] shortcode
  • Live editor preview
  • Sticky + scroll-spy options
  • Optional ItemList JSON-LD
  • Settings + Docs screens
  • Zero config — insert the block; the outline builds itself
  • Server-rendered HTML for SEO and screen readers
  • Accurate anchors with aria-current while you read
  • Numbered or bulleted lists, five style presets
  • Shortcode for classic content
  • Free forever — GPLv2 or later

At a glance

Free download
Server rendered
GPLv2 or later

Who it is for

Writers, shops, and agencies that publish long posts. Also hiring managers who want to see a small plugin I shipped.

Why I built it

Long posts need a jump list. Many plugins add extra blocks or hide the outline from search engines and screen readers.

What I did

I built a light plugin that reads headings and prints the list in the first page load. It stays simple. No big JavaScript kit.

What you can use

A publisher can add a table of contents that is easy to read and easy to find. The plugin is free. Hire me if you want it tailored.

Architecture

  • PHP block render callback, small editor script, optional ItemList JSON-LD.
  • No React runtime on the front end for the list itself.

Handoff

Download the zip, turn the plugin on, and add the block. Settings are under Settings → TOCflow. Source is on GitHub if you want to fork it.

Questions

Is TOCGuide free?

Yes. Source and releases are on GitHub. There is no theme-shop checkout.

Does it work with classic editor posts?

Yes — use the [tocguide] shortcode. Heading anchors still inject on the front end.

Will it slow my site?

The list is in the first HTML response. Front-end JS is optional for sticky/scroll-spy and respects prefers-reduced-motion.

Can you customize it for my theme?

Yes. Get help for sticky-header offsets, style presets that match your brand, or a private fork.

Work with me

Like TOCGuide?

Tell me what you would change, or write about a role. I usually reply in a day.

Say hello Hire me

Remote · within one business day (ET)