Implement Phase 8: Web UI with htmx templates
- HTML templates: layout, login, notebook list, notebook view, page viewer - Web server with chi router, embedded templates via //go:embed - Login/logout flow with session cookies - Notebook list, page grid with SVG thumbnails, page viewer - Share link views (same templates, no auth chrome) - Server command wired to start gRPC + REST + web servers concurrently - Graceful shutdown on SIGINT/SIGTERM Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
17
web/templates/notebooks.html
Normal file
17
web/templates/notebooks.html
Normal file
@@ -0,0 +1,17 @@
|
||||
{{define "title"}}Notebooks — Engineering Pad{{end}}
|
||||
|
||||
{{define "nav-right"}}<a href="/logout">Logout</a>{{end}}
|
||||
|
||||
{{define "content"}}
|
||||
<h1>Notebooks</h1>
|
||||
{{range .Notebooks}}
|
||||
<a class="card-link" href="/notebooks/{{.ID}}">
|
||||
<div class="card">
|
||||
<strong>{{.Title}}</strong>
|
||||
<br><small>{{.PageSize}} — {{.PageCount}} pages — synced {{.SyncedAt}}</small>
|
||||
</div>
|
||||
</a>
|
||||
{{else}}
|
||||
<p>No notebooks synced yet.</p>
|
||||
{{end}}
|
||||
{{end}}
|
||||
Reference in New Issue
Block a user