fix: make goose2 respect accent color - #8952
Merged
Merged
Conversation
kalvinnchau
commented
May 1, 2026
| ## Project Overview | ||
|
|
||
| Goose2 is a Tauri 2 + React 19 desktop app. It uses TypeScript strict mode, Vite, and Tailwind CSS 3. The codebase follows a feature-sliced architecture organized under `src/app/`, `src/features/`, and `src/shared/`. | ||
| Goose2 is a Tauri 2 + React 19 desktop app. It uses TypeScript strict mode, Vite, and Tailwind CSS 4. The codebase follows a feature-sliced architecture organized under `src/app/`, `src/features/`, and `src/shared/`. |
Collaborator
Author
There was a problem hiding this comment.
this said tailwind 3, but the package.json has tailwind 4 https://github.com/aaif-goose/goose/blob/main/ui/goose2/package.json#L124
morgmart
approved these changes
May 1, 2026
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.
Category: fix
User Impact: Goose2 now applies the selected accent color consistently across themed controls, loading states, and selection surfaces.
Problem: Changing the accent color did not fully affect the Goose2 UI because several theme aliases still resolved to neutral accent tokens. Users could choose a color, but parts of the interface continued to look disconnected from that preference.
Solution: This PR promotes the saved accent color into the core brand tokens, applies matching foreground contrast, and initializes those values before React mounts so the app renders with the correct theme immediately.
File changes
ui/goose2/AGENTS.md
Updates the Goose2 documentation to match the Tailwind CSS version in use and describe the accent token behavior accurately.
ui/goose2/index.html
Adds a pre-mount theme initializer so saved theme, accent, contrast, and density values are applied before React renders.
ui/goose2/src/features/agents/ui/AvatarDropZone.tsx
Uses brand tokens for drag and hover states so avatar interactions reflect the selected accent color.
ui/goose2/src/features/settings/ui/AgentProviderCard.tsx
Updates active provider and loading indicators to use brand styling tied to the saved accent color.
ui/goose2/src/features/settings/ui/ModelProviderPanels.tsx
Uses the brand token for model inventory loading indicators.
ui/goose2/src/features/settings/ui/ModelProviderRow.tsx
Uses the brand token for authentication and inventory sync spinners.
ui/goose2/src/features/settings/ui/ProvidersSettings.tsx
Uses the brand token for provider status loading indicators.
ui/goose2/src/shared/styles/globals.css
Rewires the theme aliases so primary, sidebar, ring, accent, selection, and brand colors inherit from the configured accent color.
ui/goose2/src/shared/theme/ThemeProvider.test.tsx
Adds coverage for accent token application, hex normalization, invalid color fallback, and foreground contrast selection.
ui/goose2/src/shared/theme/ThemeProvider.tsx
Normalizes saved accent colors, computes accessible foreground colors, and applies accent-related CSS variables in one place.
Reproduction Steps
accent2.mov