2a7569f4
feat: web — the Phase 2 read plane UI and its SCSS entry
SourceHut chrome (nav service-switcher, login block, environment banner, error page, embedded hashed static assets) ported from compare.sr.ht, plus the read-plane pages: landing, space document tree, rendered document with frontmatter/backlinks, and search. The URL grammar is the design's pinned one: a document's address carries no extension, ".md" is raw source, ".json" is metadata plus body, and ?rev= pins any of the three to an immutable revision. Links rendered inside a pinned page keep the pin, so following one does not silently land on the approved head. One human and no visibility levels, so the read ACL is one line: the owner and its agents read, everyone else is redirected to meta's login (a browser) or refused with 401 (a client asking for .md/.json).
Eugene Blikh <bigbes@gmail.com> — 2026-07-22 11:40:03 UTC
Commit 2a7569f43a772345c1bc739089cbad2efae0e278 —
view raw patch
Parent(s):
c833182e
| File | Status | + | − |
|---|---|---|---|
scss/main.scss
|
A | +91 | |
web/chrome.go
|
A | +146 | |
web/handlers.go
|
A | +649 | |
web/reader.go
|
A | +109 | |
web/router.go
|
A | +86 | |
web/server.go
|
A | +186 | |
web/static/logo.svg
|
A | +14 | |
web/templates.go
|
A | +101 | |
web/templates/document.html
|
A | +96 | |
web/templates/error.html
|
A | +9 | |
web/templates/index.html
|
A | +54 | |
web/templates/layout.html
|
A | +60 | |
web/templates/search.html
|
A | +48 | |
web/templates/space.html
|
A | +54 | |
web/web_test.go
|
A | +719 |