From b7622397305284d2948b1f731e48bf71ada25265 Mon Sep 17 00:00:00 2001 From: Kyle Carberry Date: Thu, 23 Oct 2025 01:27:24 -0400 Subject: [PATCH 01/23] =?UTF-8?q?=F0=9F=A4=96=20Consolidate=20theme=20vari?= =?UTF-8?q?ables=20to=20Tailwind=20native=20colors?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reduced custom CSS variables from 146 to 31 (79% reduction) by migrating to Tailwind's native color system. ## Changes ### Removed (115 variables) - 50+ gray variants → Tailwind gray-100 through gray-950 - 7 accent blue variants → Tailwind sky-{400,500,600,700,800} - 40+ unused colors (toasts, overlays, review backgrounds) ### Kept (31 semantic variables) - Mode colors: plan, exec, edit, editing, thinking, debug (17 vars) - Status: interrupted, review-accent, git-dirty, pending (4 vars) - Special: code-bg, user-border, assistant-border (3 vars) - Tokens: input, output, cached (3 vars) - Errors: error, error-bg, error-bg-dark (3 vars) - Alpha: plan-mode-alpha, editing-mode-alpha (2 vars) ### Files Updated - globals.css: -114 lines (replaced var() with @apply and theme()) - 60 component files: replaced custom classes with Tailwind equivalents - text-muted → text-gray-500 - text-foreground → text-gray-200 - bg-dark → bg-gray-950 - border-border → border-gray-800 - text-accent → text-sky-600 ## Benefits - Simplified color system using standard Tailwind scale - Better developer experience with documented color classes - Easier theming via Tailwind's built-in system - Reduced maintenance burden (79% fewer variables) _Generated with `cmux`_ --- src/App.tsx | 4 +- src/components/AIView.tsx | 24 +- src/components/ChatInput.tsx | 4 +- src/components/ChatInputToast.tsx | 8 +- src/components/ChatMetaSidebar.tsx | 2 +- src/components/CommandPalette.stories.tsx | 4 +- src/components/CommandPalette.tsx | 12 +- src/components/CommandSuggestions.tsx | 8 +- src/components/Context1MCheckbox.tsx | 6 +- src/components/DirectorySelectModal.tsx | 2 +- src/components/ErrorBoundary.tsx | 2 +- src/components/GitStatusIndicatorView.tsx | 28 +-- src/components/ImageAttachments.tsx | 2 +- src/components/KebabMenu.tsx | 10 +- src/components/LeftSidebar.tsx | 8 +- src/components/Messages/AssistantMessage.tsx | 4 +- .../Messages/ChatBarrier/RetryBarrier.tsx | 4 +- .../Messages/ChatBarrier/StreamingBarrier.tsx | 4 +- .../Messages/HistoryHiddenMessage.tsx | 4 +- src/components/Messages/Mermaid.tsx | 6 +- src/components/Messages/MessageWindow.tsx | 2 +- .../Messages/StreamErrorMessage.tsx | 4 +- src/components/Messages/TerminalOutput.tsx | 2 +- src/components/Messages/UserMessage.tsx | 4 +- src/components/Modal.tsx | 20 +- src/components/ModelSelector.tsx | 10 +- src/components/NewWorkspaceModal.tsx | 8 +- src/components/PinnedTodoList.tsx | 2 +- src/components/ProjectSidebar.tsx | 48 ++-- src/components/RightSidebar.tsx | 18 +- .../RightSidebar/CodeReview/FileTree.tsx | 20 +- .../RightSidebar/CodeReview/HunkViewer.tsx | 18 +- .../RightSidebar/CodeReview/RefreshButton.tsx | 4 +- .../CodeReview/ReviewControls.tsx | 16 +- .../RightSidebar/CodeReview/ReviewPanel.tsx | 56 ++--- .../CodeReview/UntrackedStatus.tsx | 14 +- .../RightSidebar/ConsumerBreakdown.tsx | 14 +- src/components/RightSidebar/CostsTab.tsx | 38 ++-- src/components/RightSidebar/TokenMeter.tsx | 2 +- .../RightSidebar/VerticalTokenMeter.tsx | 16 +- src/components/SecretsModal.tsx | 12 +- src/components/StatusIndicator.stories.tsx | 24 +- src/components/ThinkingSlider.stories.tsx | 22 +- src/components/ThinkingSlider.tsx | 4 +- src/components/TipsCarousel.stories.tsx | 20 +- src/components/TipsCarousel.tsx | 12 +- src/components/TitleBar.tsx | 2 +- src/components/TodoList.tsx | 4 +- src/components/ToggleGroup.stories.tsx | 12 +- src/components/ToggleGroup.tsx | 4 +- src/components/Tooltip.tsx | 8 +- src/components/VimTextArea.tsx | 6 +- src/components/WorkspaceListItem.tsx | 8 +- src/components/shared/DiffRenderer.tsx | 14 +- src/components/tools/BashToolCall.tsx | 4 +- src/components/tools/FileEditToolCall.tsx | 8 +- src/components/tools/FileReadToolCall.tsx | 18 +- src/components/tools/ProposePlanToolCall.tsx | 6 +- .../tools/shared/ToolPrimitives.tsx | 10 +- src/components/ui/button.tsx | 8 +- src/styles/globals.css | 208 +++--------------- 61 files changed, 362 insertions(+), 514 deletions(-) diff --git a/src/App.tsx b/src/App.tsx index 972ce225f..e1f4b9ae7 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -662,7 +662,7 @@ function AppInner() { return ( <> -
+
) : (
= ({ return (
-
+

Loading workspace...

@@ -286,12 +286,12 @@ const AIViewInner: React.FC = ({ return (
-
+

Loading workspace...

@@ -302,12 +302,12 @@ const AIViewInner: React.FC = ({ return (
-
+

No Workspace Selected

Select a workspace from the sidebar to view and interact with Claude @@ -320,7 +320,7 @@ const AIViewInner: React.FC = ({ return (

= ({ ref={chatAreaRef} className="flex min-w-96 flex-1 flex-col [@media(max-width:768px)]:max-h-full [@media(max-width:768px)]:w-full [@media(max-width:768px)]:min-w-0" > -
-
+
+
= ({ {projectName} / {branch} - + {namedWorkspacePath} )} -