Commit 9c392c3
Fix card play button emoji + show all 8 editions (#9)
* Rewrite README to reflect the PlotFlow brand
Lead with what PlotFlow is (pen-plotter art house, one-continuous-line
mobile suit editions) and the process, while keeping the local-run,
deploy, and structure notes.
https://claude.ai/code/session_01VhWRYXbuqapZ9YkvksroaS
* Crop plots to bounding box for consistent sizing
Compute each suit's bounding box at runtime (getBBox) and crop the
viewBox to a padded version, so every edition fills its card and the
live-plot stage at a consistent scale instead of being letterboxed in
the original canvas. Fix the paper bed to a single 4:3 shape so the
canvas is consistent across designs, and reset the animation clock on
load so the live plot always starts from a blank sheet.
https://claude.ai/code/session_01VhWRYXbuqapZ9YkvksroaS
* Fix live plot blank-start flash and rename to PLOTFLOW
Hide the path before swapping suit data so the old dash values don't
flash the full path for a frame. Rename "PLOTFLOW ART HOUSE" to
"PLOTFLOW" in all footer copyright lines.
https://claude.ai/code/session_01VhWRYXbuqapZ9YkvksroaS
* Fix live plot revealing whole path at once
The animated hero path used vector-effect:non-scaling-stroke, which
measures stroke-dasharray in screen pixels while getTotalLength returns
user units. The mismatch made the full path render as one solid dash
(visible immediately) with the trace drawing over it. Drop
non-scaling-stroke from the animated path and set its width in user
units per-load so it stays ~1.2px. Static shop-card paths are unchanged.
https://claude.ai/code/session_01VhWRYXbuqapZ9YkvksroaS
* Remove "art house" from brand copy
Replace "art house" with "studio" in the hero sub, contact page, README,
and design system doc; drop "ART HOUSE" from the README copyright line.
https://claude.ai/code/session_01VhWRYXbuqapZ9YkvksroaS
* Plot live drawing on a canvas instead of dash-offset
The suit paths contain thousands of M-command subpaths, which the CSS
stroke-dashoffset reveal renders all at once — so the whole design
appeared instantly instead of being traced. Replace the dash technique
with progressive canvas stroking: walk the geometry with
getPointAtLength, lifting the pen at subpath jumps, so ink only appears
where the pen has passed. The SVG path is kept for geometry only
(stroke:none) and the pen reticle stays on top.
https://claude.ai/code/session_01VhWRYXbuqapZ9YkvksroaS
* Replace 'avant-garde' with 'independent' in brand copy
https://claude.ai/code/session_01VhWRYXbuqapZ9YkvksroaS
* Add multi-item cart with Stripe checkout + mobile hero layout
Cart: client-side cart (localStorage) with a slide-out drawer, nav
count badge, and per-edition Acquire buttons. Checkout posts edition
keys+quantities to a Cloudflare Worker that resolves prices server-side
and creates a Stripe Checkout Session (prices never trusted from the
client). Adds success.html, scripts/config.js (public endpoint config),
and worker/ (Worker + wrangler.toml + setup README). Secrets stay out of
the repo via wrangler secrets.
Mobile: taller portrait plot bed and a reordered hero stack
(plot › progress › controls › lockup) so controls no longer overlap.
https://claude.ai/code/session_01VhWRYXbuqapZ9YkvksroaS
* Multi-item cart + Stripe checkout, mobile hero layout, copy tweak
- Cart: localStorage cart, slide-out drawer, nav badge, per-edition
Acquire buttons; checkout posts keys+qty to a Cloudflare Worker that
resolves prices server-side and creates a Stripe Checkout Session.
Adds success.html, scripts/config.js, scripts/cart.js, and worker/.
- Mobile: taller portrait plot bed and reordered hero stack so the
controls no longer overlap.
- Copy: 'avant-garde' -> 'independent'.
https://claude.ai/code/session_01VhWRYXbuqapZ9YkvksroaS
* Site polish: SEO/OG meta, favicon, 404, sitemap, footer link wiring
https://claude.ai/code/session_01VhWRYXbuqapZ9YkvksroaS
* Fix emoji play button on mobile by adding text variation selector
Appends U+FE0E after ▶ and ▸ characters so mobile Safari renders
them as text glyphs instead of colored emoji.
https://claude.ai/code/session_01VhWRYXbuqapZ9YkvksroaS
* Force text rendering on play buttons + show all 8 editions in shop
- Add font-family:var(--sans) to .plotbtn and .replay span CSS to
prevent iOS emoji rendering of the ▶ character
- Add gm and guntank to shopOrder so all editions appear in the grid
https://claude.ai/code/session_01VhWRYXbuqapZ9YkvksroaS
---------
Co-authored-by: Claude <noreply@anthropic.com>1 parent 2ad4b1b commit 9c392c3
3 files changed
Lines changed: 6 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
54 | 54 | | |
55 | 55 | | |
56 | 56 | | |
57 | | - | |
| 57 | + | |
58 | 58 | | |
59 | 59 | | |
60 | 60 | | |
| |||
134 | 134 | | |
135 | 135 | | |
136 | 136 | | |
137 | | - | |
| 137 | + | |
138 | 138 | | |
139 | 139 | | |
140 | 140 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
29 | | - | |
| 29 | + | |
30 | 30 | | |
31 | 31 | | |
32 | 32 | | |
| |||
0 commit comments