Add static homepage; refresh README to match current architecture #2

Merged
arne merged 2 commits from homepage into main 2026-05-06 16:45:03 +02:00
Owner

Summary

  • Adds a static site under web-site/ (bases-themed, IBM Plex Mono self-hosted, animated terminal demo that mirrors real lipgloss output, transparent boxes with faint borders).
  • Brings README into agreement with the post-Calendar/Agenda architecture and the local-only-reads change from 30c9bce.
  • Two small CLI tweaks that fall out of the doc audit: Saturday now uses palette slot 11 (bases-themable bright orange) instead of xterm-256 slot 208, and cal week help text matches the new empty-day rendering and arrow-between-time-and-title placement.

What changed in the docs

  • Layout mapinternal/store/ + internal/remote/internal/calendar/ + internal/agenda/.
  • Auto-archive — runs only on mutations (cal add, cal edit, cal sync); reads never write.
  • Mutating from the CLI — full pull → purge/archive → save → push ordering documented; push-failure paragraph rewritten to match the current non-zero-exit behaviour.
  • Server endpointsGET /events (used by the pull step) is now listed.
  • Viewing — drops stale (no meetings) placeholder; documents the new arrow placement; adds a cal next two-line example.
  • Layout section removed from the homepage (kept in README); homepage gets fresh playful feature cards: Self-tidying, Cheap reads, Two-way mirror.

Test plan

  • go build ./... && go test ./... (passes locally)
  • Open web-site/index.html in a browser; verify the hero terminal animation, dark/light palette, transparent feature/code/terminal cards with faint borders, and that the bordered tables and cal next countdown render with bases colors.
  • Run cal against a Saturday-containing calendar in a bases-themed terminal; confirm Sat header now matches the website's bases orange (#e07800).
  • Run cal week and confirm empty days render as a faint date header (no (no meetings) text).
  • Run cal next and confirm the two-line countdown-then-event layout.

🤖 Generated with Claude Code

## Summary - Adds a static site under `web-site/` (bases-themed, IBM Plex Mono self-hosted, animated terminal demo that mirrors real lipgloss output, transparent boxes with faint borders). - Brings README into agreement with the post-Calendar/Agenda architecture and the local-only-reads change from 30c9bce. - Two small CLI tweaks that fall out of the doc audit: Saturday now uses palette slot 11 (bases-themable bright orange) instead of xterm-256 slot 208, and `cal week` help text matches the new empty-day rendering and arrow-between-time-and-title placement. ## What changed in the docs - **Layout map** — `internal/store/` + `internal/remote/` → `internal/calendar/` + `internal/agenda/`. - **Auto-archive** — runs only on mutations (`cal add`, `cal edit`, `cal sync`); reads never write. - **Mutating from the CLI** — full pull → purge/archive → save → push ordering documented; push-failure paragraph rewritten to match the current non-zero-exit behaviour. - **Server endpoints** — `GET /events` (used by the pull step) is now listed. - **Viewing** — drops stale `(no meetings)` placeholder; documents the new arrow placement; adds a `cal next` two-line example. - **Layout section removed from the homepage** (kept in README); homepage gets fresh playful feature cards: *Self-tidying*, *Cheap reads*, *Two-way mirror*. ## Test plan - [ ] `go build ./... && go test ./...` (passes locally) - [ ] Open `web-site/index.html` in a browser; verify the hero terminal animation, dark/light palette, transparent feature/code/terminal cards with faint borders, and that the bordered tables and `cal next` countdown render with bases colors. - [ ] Run `cal` against a Saturday-containing calendar in a bases-themed terminal; confirm Sat header now matches the website's bases orange (`#e07800`). - [ ] Run `cal week` and confirm empty days render as a faint date header (no `(no meetings)` text). - [ ] Run `cal next` and confirm the two-line countdown-then-event layout. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
* web-site/ — static site with bases-themed hero, animated terminal demo
  (rounded box-drawing tables matching the lipgloss output), self-hosted
  IBM Plex Mono + a 5.7KB JetBrains Mono subset for U+2500-259F so box
  borders connect at any line-height.

* README.md — bring docs in line with the post-Calendar/Agenda
  architecture and the local-only-reads change in 30c9bce:
  - Layout map: replace internal/store + internal/remote with
    internal/calendar + internal/agenda.
  - Auto-archive: clarify it runs only on mutations; reads never write.
  - Mutating from the CLI: document the full pull → purge → save → push
    ordering, and the (current) non-zero exit on push failure.
  - Server endpoints: add the GET /events listing the CLI uses for pulls.
  - Viewing: drop the stale "(no meetings)" placeholder; document the
    new arrow-between-time-and-title placement; show the cal next
    two-line layout.
  - Drop "no sync" from the lede.

* internal/view/week.go — Saturday's color now uses palette slot 11
  (bases bright orange, themable) instead of the xterm-256 fixed slot
  208. Brings cal's terminal output into agreement with the website,
  which uses the bases palette directly.

* cmd/cal/main.go — newWeekCmd help text matches the new empty-day
  rendering (faint date header, no placeholder text) and the new
  in-progress arrow placement.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
arne merged commit ee4681780e into main 2026-05-06 16:45:03 +02:00
arne deleted branch homepage 2026-05-06 16:45:03 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
arne/cal!2
No description provided.