Summary
Add navigation features to help readers discover and browse content.
Features
1. Tag Pages
- Route:
/tags/{tag} - lists all posts with that tag
- Route:
/tags - index of all tags with post counts
- Reuse posts list template with tag filter
Example:
/tags/cooking → All posts tagged "cooking"
/tags → cooking (3), python (5), aliens (2)
2. Archive Page
- Route:
/archive - all posts grouped by year/month
- Compact list view (title + date, no excerpts)
Example:
2026
January
- Grandma's Intergalactic Gumbo (Jan 24)
- Hello World (Jan 15)
2025
December
- Year in Review (Dec 31)
3. Related Posts
- Show 3-5 related posts at bottom of post page
- Algorithm: posts sharing the most tags
- Fallback: recent posts if no tag overlap
- Available as
{{ related_posts }} in post template
Implementation Notes
- Tag pages need a new router (
routers/tags.py)
- Archive can be a page template with all posts passed in
- Related posts calculated in post router, passed to template
Templates Needed
tags.html - tag index
tag.html - single tag listing
archive.html - archive page
- Update
post.html - related posts section
Summary
Add navigation features to help readers discover and browse content.
Features
1. Tag Pages
/tags/{tag}- lists all posts with that tag/tags- index of all tags with post countsExample:
2. Archive Page
/archive- all posts grouped by year/monthExample:
3. Related Posts
{{ related_posts }}in post templateImplementation Notes
routers/tags.py)Templates Needed
tags.html- tag indextag.html- single tag listingarchive.html- archive pagepost.html- related posts section