Skip to content

Commit caa495c

Browse files
committed
Add GitHub Pages site (three.js red panda diorama) to plan
https://claude.ai/code/session_01Sn1jjXDRydhdL4AGnkWNGQ
1 parent 7bbf3e5 commit caa495c

1 file changed

Lines changed: 25 additions & 2 deletions

File tree

docs/PLAN.md

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,28 @@ assets, reduced-motion-respecting transitions.
234234
The hexagonal split is what makes every functional test headless: nothing in
235235
`cuesheet-core`/`cuesheet-typst` knows Tauri exists.
236236

237-
## 8. Milestones
237+
## 8. GitHub Pages site (three.js)
238+
239+
A single-page marketing site at `https://kindlyops.github.io/cuesheet/`, quirky and
240+
handmade-feeling, sharing the app's design language.
241+
242+
- **Centerpiece:** a paper-craft, stop-motion-styled autumn diorama — a low-poly **red
243+
panda** among paper trees and falling leaves, in the Mr Fox palette — rendered with
244+
three.js. The scene parallax-rotates subtly with scroll and mouse movement; animation
245+
uses a gentle stop-motion cadence (stepped keyframes at ~12 fps feel) and respects
246+
`prefers-reduced-motion` with a static hero render fallback.
247+
- **Content below the fold:** what-it-does blurb in the same Tufte typography, app
248+
screenshots, and macOS/Windows download buttons that resolve the latest GitHub Release
249+
assets at load time via the public Releases API (no rebuild needed per release).
250+
- **Implementation:** `site/` directory in this repo — Vite + TypeScript + three.js, models
251+
authored as glTF (low-poly, flat paper-texture materials, hand-built or via Blender
252+
export committed to the repo). No framework; the page is mostly static HTML/CSS.
253+
- **Deploy:** `pages.yml` workflow builds `site/` and deploys via
254+
`actions/deploy-pages` on every push to `main` touching `site/`.
255+
- **Budget:** scene kept under ~1 MB of assets, lazy-initialized after first paint, graceful
256+
no-WebGL fallback to the static render.
257+
258+
## 9. Milestones
238259

239260
1. **M1 — Core port:** workspace scaffold; model + ZIP/SQLite parser; fixture builder;
240261
unit + parser tests green in CI.
@@ -246,8 +267,10 @@ The hexagonal split is what makes every functional test headless: nothing in
246267
reveal-in-folder, last-directory memory.
247268
5. **M5 — Pipeline:** ci.yml, release.yml with gated signing + updater, `docs/RELEASING.md`,
248269
first tagged draft release (unsigned) validating end-to-end installers on both OSes.
270+
6. **M6 — Pages site:** red-panda diorama scene, landing page content, download buttons
271+
wired to latest release, `pages.yml` deploy workflow.
249272

250-
## 9. Risks / notes
273+
## 10. Risks / notes
251274

252275
- **Golden parity:** the vbs template emits some fields (clip filenames, resolution) that
253276
come from the media pipeline; the offline app reproduces vbs's behavior for the

0 commit comments

Comments
 (0)