v0.9 Phase 1: tokens + fonts (Meadow + Fraunces/Inter)#63
Merged
Conversation
… Round Phase 1 of the v0.9.0-beta plan (docs/v0.9-plan.md §6). Plumbing only — no components consume the new tokens yet; visual output is near-identical to v0.8.2-alpha. - Add Meadow palette to src/index.css @theme block as CSS custom properties (bg, surface, surface-alt, ink trio, border pair, accent trio, warn pair, 5 chip tokens incl. --chip-sea). - Add Fraunces (opsz 9..144, weights 400/500/600 + italic) and Inter (400/500/600/700) via Google Fonts in index.html, src/index.css, and public/version-history.html. Register --font-display / --font-sans. - Mirror tokens in src/lib/colors.ts as new `meadow` export; add `fontStacks` export. Legacy `colors` export kept untouched until later phases retire its consumers. - Retire Varela Round entirely: remove all @imports and any font-family references (src/index.css, index.html, src/App.tsx loading state, public/version-history.html). Per locked decision #2, Parchment / Midnight / Sakura are intentionally excluded — Meadow is the only theme for v0.9. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
jacuzzicoding
added a commit
that referenced
this pull request
May 3, 2026
- package.json version → 0.9.0-beta (footer/UI version flows from here via vite define) - README.md: clarify v0.8.2-alpha is last stable, v0.9.0-beta in active dev - CLAUDE.md: update current-version line to reflect Phase 2 shipped - docs/v0.9-plan.md: mark Phase 1 (PR #63) and Phase 2 (PR #65) as shipped - README sea-creatures note updated (TabBar → sidebar nav) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This was referenced May 3, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Phase 1 of the v0.9.0-beta implementation plan (
docs/v0.9-plan.md§6 — Phase 1, merged in #62). Plumbing only — adds the Meadow design tokens and the new type stack, but does not yet wire them into any component. Visual output should be near-identical to v0.8.2-alpha. Component restyles consuming these tokens begin in Phase 5; the Sidebar and TownManager rebuilds (Phases 2–4) come first.Added
src/index.css@themeblock as CSS custom properties:--bg,--surface,--surface-alt--ink,--ink-soft,--ink-muted--border,--border-strong--accent,--accent-soft,--accent-ink(oklch moss green)--warn,--warn-soft(oklch clay)--chip-fish,--chip-bugs,--chip-fossils,--chip-art,--chip-seasrc/lib/colors.ts— newmeadowexport (JS literals for any spot a CSS var can't be used) plus afontStacksexport. The legacycolorsexport is kept untouched per the plan ("keepcolorsintact as it may still be referenced elsewhere until later phases clean it up").src/index.cssandindex.html. Registered as--font-display.--font-sans. Set as the global defaultfont-family(replacing the previous Varela Round default).Removed
@importremoved fromsrc/index.css<link>removed fromindex.html<link>andfont-familyremoved frompublic/version-history.htmlfontFamily: 'Varela Round, ...'insrc/App.tsxloading state replaced with Intergrep -i "varela"returns zero matches acrosssrc/,public/, and the repo root HTML.Intentional exclusions (per locked decisions in the plan doc)
docs/v0.9-plan.md("ship Meadow only"). No[data-theme="..."]branching, no theme-switcher state, no alternate token sets.Visual impact
Components don't consume the new tokens yet, so most of the app looks the same. The one user-facing change is the body font: Varela Round is gone, so text now renders in Inter. Fraunces will start appearing in Phase 5+ when display headings, row names, and stat values get restyled.
Test plan
npm run build— passes (tsc + vite build, 0 errors)npm test— 59/59 passinggrep -i "varela"acrosssrc/,public/,index.htmlreturns zero matchesDecisions made on ambiguous points
@themesyntax with v3-style@tailwinddirectives: The repo uses Tailwind v4 (tailwindcss@^4.1.12+@tailwindcss/postcss) but with the legacy@tailwind base/components/utilitiesdirectives. Tailwind v4's@themeblock works alongside this setup, so I added@theme { ... }without migrating to@import "tailwindcss". A future phase can do that migration if needed.src/index.css@themeblock and mirrored insrc/lib/colors.ts." I added both the@themeregistrations (Tailwind-aware) and a plain:rootblock (so anything readingvar(--accent)outside Tailwind context still works), plus themeadowJS export. Belt-and-braces; consolidate later if redundant.* { font-family: ... }rule insrc/index.csshad to point somewhere. I set it to Inter (the new UI stack). This is technically a small visual change (text now renders in Inter), but the alternative was to leave a dangling Varela Round reference, which the plan explicitly forbids.public/version-history.html: This is a standalone static HTML page, not part of the React app, but it loaded Varela Round directly. Updated it to load Fraunces + Inter for consistency since the plan says "anyVarela Roundreferences."Design handoff note
design_handoff_v0.9.2_curator/is referenced in the plan but is not present in this worktree (likely lives outside the repo / in a sibling directory I don't have access to from the worktree). All Phase 1 specs were taken directly fromdocs/v0.9-plan.md§5 ("Visual Direction") which has the full token table verbatim — so handoff CSS wasn't needed for this phase. Will need access to the handoff folder for Phase 5+.