refactor: website token alignment + design-tokens light palette refresh#321
Merged
Conversation
Third (final) PR in the cockpit dark mode + style alignment series. - Refresh @ngaf/design-tokens light palette to chat lib aesthetic (pure-white surfaces, near-black text, neutral grays). Chat lib stays independent (decision C); embedded chat in cockpit visually unifies because design-tokens absorbed chat lib's values. - Migrate apps/website from hand-maintained @theme block to build-time CSS generation from @ngaf/design-tokens TS constants. Single source of truth; no drift. - Document the runtime-vs-build-time naming asymmetry (cockpit uses bg-[var(--ds-canvas)]; website uses bg-canvas). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
5 tasks
blove
added a commit
that referenced
this pull request
May 15, 2026
…s) (#333) * docs: dark palette alignment design Sibling of #321 (light palette refresh). Aligns design-tokens dark palette to chat lib's neutral-dark aesthetic (rgb(17,17,17) canvas, rgb(28,28,28) surface, etc.) instead of the original brand-blue undertone shipped in #298. Embedded chat in cockpit dark mode now visually unifies with cockpit chrome. Reverses decision D from the original cockpit dark mode brainstorming in favor of design-system cohesion. Accent family stays unchanged (brand identity preserved). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * feat(design-tokens): align dark palette to neutral grays Reverses #298's brand-blue undertone in dark mode in favor of cohesion with the @ngaf/chat lib's neutral-dark aesthetic. Embedded chat surfaces in cockpit dark mode now unify visually with cockpit chrome — no iframe color seam. Accent family unchanged (brand identity preserved). * test(design-tokens): update dark-theme css-vars assertions Aligns --ds-canvas and --ds-text-primary expectations with the new neutral-dark palette. * test(cockpit): update dark-mode e2e canvas assertion Aligns the default-dark --ds-canvas expectation with the new neutral-dark palette. * chore(design-tokens): bump to 0.0.35 Patch bump for dark palette alignment. * test(example-layouts): update dark-theme install-embedded-theme assertion Aligns the default-dark --ds-canvas expectation with the new neutral-dark palette. * test(example-layouts): fix stale #fafbfc light-canvas assertions Pre-existing test drift missed by #321 (light palette refresh — canvas changed to rgb(255, 255, 255)). Caught while updating the dark assertion in this PR. --------- Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
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
Third (final) PR in the cockpit dark mode + style alignment series (spec: `docs/superpowers/specs/2026-05-15-website-token-alignment-design.md`, plan: `docs/superpowers/plans/2026-05-15-website-token-alignment.md`).
PR 1 (cockpit polish, #307) and PR 2 (chat lib polish, #313) shipped earlier in the sequence. This closes the visual-consistency gap.
Test plan
Note
Two pre-existing local-failure flags surfaced during this PR's check stack (`website:lint` on the tracked `apps/website/public/demo/main.js` artifact, `example-layouts:test` Nx executor disagreement). Verified these fail on baseline too, not introduced here.
🤖 Generated with Claude Code