Add browser frontend at /browse/ #6

Merged
forgejo_admin merged 2 commits from 5-browse-frontend into main 2026-02-24 15:54:50 +00:00

Summary

  • Jinja2 server-side rendered frontend at /browse/
  • 6 templates: projects, project notes, note detail (with links), tags, tag notes
  • System fonts, minimal CSS, no client-side JS
  • Added jinja2>=3.1 dependency

Closes #5

Test plan

  • /browse/ shows project list
  • /browse/projects/pal-e-platform shows notes in project
  • /browse/notes/platform-architecture renders HTML content with tags and linked notes
  • /browse/tags shows all tags
  • /browse/tags/sop shows notes tagged 'sop'
  • ruff check passes
  • Woodpecker builds successfully
## Summary - Jinja2 server-side rendered frontend at `/browse/` - 6 templates: projects, project notes, note detail (with links), tags, tag notes - System fonts, minimal CSS, no client-side JS - Added `jinja2>=3.1` dependency Closes #5 ## Test plan - [ ] `/browse/` shows project list - [ ] `/browse/projects/pal-e-platform` shows notes in project - [ ] `/browse/notes/platform-architecture` renders HTML content with tags and linked notes - [ ] `/browse/tags` shows all tags - [ ] `/browse/tags/sop` shows notes tagged 'sop' - [ ] `ruff check` passes - [ ] Woodpecker builds successfully
Add browser frontend at /browse/ (#5)
All checks were successful
ci/woodpecker/pr/woodpecker Pipeline was successful
7a30893fe1
Jinja2 server-side rendered frontend with 6 templates:
- /browse/ — project list
- /browse/projects/{slug} — notes in a project
- /browse/notes/{slug} — note with content, tags, and linked notes
- /browse/tags — all tags
- /browse/tags/{name} — notes filtered by tag

System fonts, minimal CSS, no client-side JS.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Address PR review: XSS comment and urlencode tag URLs
All checks were successful
ci/woodpecker/pr/woodpecker Pipeline was successful
36967ac6d6
- Add comment documenting intentional | safe usage and XSS risk
- Add | urlencode to tag name URLs in templates

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Author
Owner

Review fixes applied

  1. BLOCKING — XSS comment: Added Jinja2 comment above | safe in note.html documenting the intentional unsanitized HTML rendering, accepted risk (Tailscale-only, no auth, trusted MCP agents), and reference to issue #2.
  2. NIT — urlencode: Added | urlencode to tag name URLs in all 4 templates (note.html, project_notes.html, tag_notes.html, tags.html).
## Review fixes applied 1. **BLOCKING — XSS comment:** Added Jinja2 comment above `| safe` in `note.html` documenting the intentional unsanitized HTML rendering, accepted risk (Tailscale-only, no auth, trusted MCP agents), and reference to issue #2. 2. **NIT — urlencode:** Added `| urlencode` to tag name URLs in all 4 templates (`note.html`, `project_notes.html`, `tag_notes.html`, `tags.html`).
Sign in to join this conversation.
No description provided.