fix: align design tokens with landing page color scheme (Phase 10e-2a) #27
No reviewers
Labels
No labels
domain:backend
domain:devops
domain:frontend
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
forgejo_admin/westside-landing!27
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "26-align-design-tokens-with-landing-page-co"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Aligns the westside-app CSS custom properties with the landing page (
ldraney/west-side-basketball) color palette. Token values only — no structural changes. Every route already usesvar()references, so the new values propagate everywhere automatically.Changes
src/app.css— updated 12 token values:#c41230→#d42026(matches landing page--color-red)#a00e28→#e8333a(matches landing page--color-red-hover)#c41230→#d42026#e0e0e0→#f0f0f0(matches--color-gray-100)#666→#a3a3a3(matches--color-gray-400)#888→#a3a3a3#aaa→#d4d4d4(matches--color-gray-200)#555→#737373(matches--color-gray-600)#111→#141414(matches--color-dark)#1a1a1a→#262626(matches--color-gray-800)#222→#262626app.html↔app.csssync requirementsrc/app.html— updated inline text color#e0e0e0→#f0f0f0to stay in syncTest Plan
npm run buildpassesReview Checklist
Related
plan-2026-03-08-tryout-prep— Phase 10e-2a color alignmentPR #27 Review
DOMAIN REVIEW
Tech stack: SvelteKit / CSS custom properties (design tokens)
This is a CSS-only token value update -- 12 custom property values in
src/app.cssand 1 inline style sync insrc/app.html. The changes align the westside-app palette with the landing page (ldraney/west-side-basketball). No structural changes, no new components, no logic changes.Token propagation: All route components use
var()references for these tokens. The propagation model is sound -- changing values in:rootflows everywhere automatically.FOUC prevention: The
app.htmlinlinecoloris correctly updated from#e0e0e0to#f0f0f0to match the new--color-textvalue. The comment documenting this sync requirement is a good addition.Collapsed semantic distinctions (2 cases):
--color-text-mutedand--color-text-dimare now both#a3a3a3. These were previously#666and#888respectively -- distinct values serving different purposes. Both are actively used across 40+ references in the codebase. If the intent is to collapse them, one should be removed or aliased; if they should remain distinct, one needs a different value.--color-borderand--color-border-subtleare now both#262626. Previously#1a1a1aand#222. Same concern.Accessibility (contrast ratios against
#0a0a0abackground):--color-text: #f0f0f0= ~18.3:1 -- excellent (AAA)--color-text-muted/dim: #a3a3a3= ~8.4:1 -- good (AAA)--color-text-subtle: #d4d4d4= ~14.2:1 -- excellent (AAA)--color-text-faint: #737373= ~4.0:1 -- borderline, fails WCAG AA for normal text (4.5:1 required). However, this is an improvement from the previous#555(~2.7:1). Iftext-faintis used only for decorative/non-essential text, this is acceptable.Stale hardcoded colors (pre-existing, not introduced by this PR):
/home/ldraney/westside-app/src/routes/admin/users/+page.svelteline 14:admin: '#c41230'-- uses the OLD brand red instead of the new#d42026.#666and#1a1a1aare old values that should reference the updated palette.These are pre-existing and outside the scope of a token-value-only PR, but since this PR's purpose is color alignment, they should at least be tracked.
BLOCKERS
None. This PR changes only CSS custom property values and one inline style. There is:
NITS
Collapsed tokens --
--color-text-mutedand--color-text-dimnow map to the same value (#a3a3a3). Same for--color-borderand--color-border-subtle(both#262626). Consider either giving them distinct values to preserve the semantic gradient, or documenting that they are intentionally identical aliases. Not a blocker since both were close before.Pre-existing stale hardcoded color --
admin/users/+page.svelteline 14 still uses#c41230(old brand red). This file has inlineROLE_COLORS,ROLE_BG, andROLE_BORDERmaps that bypass the design token system entirely. Worth a follow-up issue to migrate these to CSS custom properties.--color-text-faintcontrast --#737373on#0a0a0ayields ~4.0:1 contrast, just below WCAG AA (4.5:1). If this token is used for non-essential/decorative text only, it is acceptable. If used for meaningful content, consider bumping to#7a7a7aor higher.SOP COMPLIANCE
26-align-design-tokens-with-landing-page-co)plan-2026-03-08-tryout-prepPhase 10e-2a)Closes #26present in RelatedPROCESS OBSERVATIONS
#c41230inadmin/users/+page.svelteshould be tracked as a separate issue to complete the color alignment effort.VERDICT: APPROVED