A Jekyll-powered D&D auxiliary website with automated glossary tooltips.
This site features an automated glossary tooltip system that works seamlessly with Sveltia CMS and GitHub Pages.
Each glossary entry supports the following fields:
- term: The term name
- definition: Short definition shown in tooltips
- more: Extended information shown only on the glossary page (optional)
- type: Category of the term (Person, Vanir, Jötunn, etc.)
- image: Optional image for the term
- image_alt: Alt text for accessibility
- url: Optional reference URL
-
Write in Sveltia CMS:
The adventure begins when Aldyhn guides the party through Vani's domain...
-
GitHub Actions automatically processes during build but does not commit:
The adventure begins when {% include glossary_tooltip.html term="Aldyhn" %} guides the party through {% include glossary_tooltip.html term="Vani" %}'s domain... -
Readers see beautiful tooltips while your source files stay clean! 🎉
The Rake tasks include built-in protection against accidental local usage:
# Protected - shows helpful warning
rake glossary:autolink
# Automatically works in GitHub Actions
# Override for local testing (not recommended)
rake glossary:autolink -- --trust-me-broFor GitHub Pages:
- Go to repository Settings > Pages
- Under "Source", select "GitHub Actions" (not "Deploy from a branch")
- That's it! The workflow will handle everything automatically.
The system is designed for automatic GitHub Actions processing, but if you need manual control:
# Will show a helpful warning - source files stay clean with GitHub Actions!
rake glossary:autolink
# Override for local testing (modifies source files)
rake glossary:autolink -- --trust-me-bro
# Remove tooltips from source files
rake glossary:remove_links -- --trust-me-bro- CMS: Write clean markdown in Sveltia CMS
- Automatic Processing: GitHub Actions handles everything
- Clean Source Files: No Liquid template clutter
- GitHub Pages Compatible: No custom plugins needed
- Protected: Safety checks prevent accidental source file modification