Context
Every glossary entry is injected by js/glossary.js after load. The HTML served contains only "Loading the glossary…". Search engines and link previews see an empty page, which for a glossary — the most linkable content on the site — is the wrong way round.
What to change
Files: A new build script, glossary.html, js/glossary.js, a new workflow
Requirements:
- Render the entries into
glossary.html at build time so the served HTML contains them
- Keep the client-side search working on top of the prerendered markup
- A GitHub Action regenerates the page when
data/glossary.json changes and commits the result
- The JSON stays the single source of truth — never edit the generated markup by hand
- Say clearly in the file that the section is generated
Acceptance criteria
How to verify locally
python3 -m http.server 8000
Then open http://localhost:8000.
Difficulty
Advanced. The interesting constraint is keeping generated and source in step without letting them drift.
New here? Comment /claim on this issue and a bot will assign it to you. Then read CONTRIBUTING.md.
Stuck at any point? Comment here saying what you have tried and where it stopped working — that is not an admission of failure, it is how we find out the instructions were unclear. You can also come to a PR Debug Clinic (Oct 12 or Oct 21).
Context
Every glossary entry is injected by
js/glossary.jsafter load. The HTML served contains only "Loading the glossary…". Search engines and link previews see an empty page, which for a glossary — the most linkable content on the site — is the wrong way round.What to change
Files: A new build script,
glossary.html,js/glossary.js, a new workflowRequirements:
glossary.htmlat build time so the served HTML contains themdata/glossary.jsonchanges and commits the resultAcceptance criteria
curlon the built page returns the actual termsHow to verify locally
Then open http://localhost:8000.
Difficulty
Advanced. The interesting constraint is keeping generated and source in step without letting them drift.
New here? Comment
/claimon this issue and a bot will assign it to you. Then read CONTRIBUTING.md.Stuck at any point? Comment here saying what you have tried and where it stopped working — that is not an admission of failure, it is how we find out the instructions were unclear. You can also come to a PR Debug Clinic (Oct 12 or Oct 21).