Implement Phase 3 of v1.3.0 tags feature per microformats-tags-design.md: Routes (starpunk/routes/public.py): - Add /tag/<tag> archive route with normalization and 404 handling - Pre-load tags in index route for all notes - Pre-load tags in note route for individual notes Admin (starpunk/routes/admin.py): - Parse comma-separated tag input in create route - Parse tag input in update route - Pre-load tags when displaying edit form - Empty tag field removes all tags Templates: - Add tag input field to templates/admin/edit.html - Add tag input field to templates/admin/new.html - Use Jinja2 map filter to display existing tags Implementation details: - Tag URL parameter normalized to lowercase before lookup - Tags pre-loaded using object.__setattr__ pattern (like media) - parse_tag_input() handles trim, dedupe, normalization - All existing tests pass (micropub categories, admin routes) Per architect design: - No pagination on tag archives (acceptable for v1.3.0) - No autocomplete in admin (out of scope) - Follows existing media loading patterns Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
2.4 KiB
PURPOSE
This document describes how documentation in this folder should be organized and supersedes any other instructions.
FOLDERS
ARCHITECTURE
The architecture folder should contain documentation reflecting the current design of the system and should be updated at the end of each release to ensure it is current.
DECISIONS
This folder contains any architectural decisions, documented as ADRs.
- Format:
ADR-NNN-brief-title.md(numbered sequentially) - Create an ADR when making architectural decisions, choosing between technical approaches, or establishing patterns
DESIGN
This folder is used by the architect to document implementation designs to be handed off to the developer. These designs should be sorted into subfolders reflecting the semantic version number of the release in question (e.g., v1.0.0/, v1.1.1/).
All developer interaction belongs in the appropriate version subfolder:
- Implementation designs and specifications
- Developer questions to the architect
- Architect responses
- Implementation reports (format:
YYYY-MM-DD-description.md) - Implementation reviews
PROJECTPLAN
This folder contains documents relating to the future state of the project. There should be a single BACKLOG.md file that lists future features by priority as well as bugs (which are assumed to be high priority). Items in this file can have one of the following priorities:
- Critical - Items that break existing functionality
- High
- Medium
- Low
In addition to the backlog file each version should have a folder named for its semantic version with a RELEASE.md file which lists the features and bugs to be addressed in that release.
STANDARDS
Includes any standards written by the architect that the developer needs to reference during development. Any deprecated standards should be moved to the DEPRECATED subfolder when appropriate.
WHERE TO FIND DOCUMENTATION
- Before implementing a feature: Check
decisions/for relevant ADRs anddesign/{version}/for specifications - Understanding system architecture: Start with
architecture/ - Coding guidelines: See
standards/ - Past implementation context: Review
design/{version}/for similar work - Project roadmap and scope: Refer to
projectplan/
KEY REFERENCES
- Architecture:
architecture/ - Coding Standards:
standards/python-coding-standards.md - Testing:
standards/testing-checklist.md - Project Backlog:
projectplan/BACKLOG.md