Page Tags
Great Docs lets you categorize pages with tags for improved discoverability. Add tags to any user guide, recipe, or custom section page via frontmatter, and Great Docs will generate a tags index page, render tag pills above page titles, and support hierarchical tag organization.
Tags are disabled by default. To enable them, add a tags section to great-docs.yml:
great-docs.yml
tags:
enabled: trueOr use the shorthand:
great-docs.yml
tags: trueTag Pills on Pages
By default, tagged pages display small pill-shaped links above the page title. Each pill links to the corresponding tag’s section on the tags index page. This helps readers discover related content.
To disable the pills while keeping the tags index page:
great-docs.yml
tags:
enabled: true
show_on_pages: falseTag Location
By default, tag pills appear at the top of the page, just below the title (and subtitle, if present). You can move them to the bottom of the page instead, where they appear after the page metadata block (dates and author info) or under a horizontal rule if no metadata is present.
Set the default location globally in great-docs.yml:
great-docs.yml
tags:
enabled: true
location: bottomValid values are top (default) and bottom.
Per-Page Overrides
Individual pages can override the global setting using tag-location in their YAML frontmatter:
user_guide/05-tips.qmd
---
title: "Tips and Tricks"
tags: [Python, Setup]
tag-location: top
---This is useful when most pages use bottom placement but a few key pages benefit from prominent top placement (or vice versa).
When tags are placed at the bottom, they are rendered after the page metadata (creation/modification dates and author info). If page metadata is not enabled, tags appear at the end of the main content under a horizontal rule.
Tag Icons
You can associate tags with icons from the Lucide icon set (the same icon set used by nav_icons). Icons appear inside the tag pill and next to the tag heading on the index page.
great-docs.yml
tags:
enabled: true
icons:
Python: code
Tutorial: book-open
API: file-code
Testing: flask-conicalThe icon names are Lucide icon names (lowercase, hyphenated). Browse the full catalogue at lucide.dev/icons.
Full Configuration Reference
Here is the complete tags configuration with all options and their defaults:
great-docs.yml
tags:
enabled: false # Master switch (default: false)
index_page: true # Generate a tags index page (default: true)
show_on_pages: true # Show tag pills above page titles (default: true)
location: top # Pill placement: "top" or "bottom" (default: "top")
hierarchical: true # Support "/" as tag hierarchy separator (default: true)
icons: {} # Tag → icon name mapping (default: empty)
shadow: [] # Tags hidden from public view (default: empty)
scoped: false # Scoped tag listings per section (default: false)Individual pages can override location via tag-location in their YAML frontmatter.
Which Pages Are Scanned?
Great Docs scans for tags in .qmd files found in:
- User guide pages (
user-guide/) - Recipes pages (
recipes/) - Custom sections (any section defined in
sections:config)
Index pages (index.qmd) in these directories are skipped. API reference pages and the changelog are not scanned for tags.
Tips
- Start simple: begin with a flat list of 5–10 tags and add hierarchy later as your documentation grows.
- Be consistent: establish a tag naming convention early (e.g., always use title case).
- Use shadow tags for workflow: tags like
needs-updateorv2-migrationhelp you track editorial tasks without cluttering the reader experience. - Combine with search: tags improve discoverability today, and will integrate with enhanced search in a future release.