-
Notifications
You must be signed in to change notification settings - Fork 11.7k
feat(companion): dark mode #27305
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
dhairyashiil
wants to merge
13
commits into
main
Choose a base branch
from
feat/companion-dark-mode-pr-1
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
feat(companion): dark mode #27305
+1,135
−448
Conversation
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
…ence - Set userInterfaceStyle to 'automatic' in app.json to follow system preference - Add useColorScheme hook from NativeWind to detect color scheme - Update root layout with dynamic colors for StatusBar, containers, and modals - Update tabs layout with dynamic colors for tab bar and icons - Update all Stack.Screen options to use dynamic background colors and blur effects - Support both iOS and Android with appropriate dark mode colors Co-Authored-By: peer@cal.com <peer@cal.com>
…rk mode Use dark: Tailwind variant classes instead of conditional logic based on useColorScheme for the container background. This ensures NativeWind automatically applies dark mode styles based on system preference. Co-Authored-By: peer@cal.com <peer@cal.com>
- Changed darkMode from 'class' to 'media' in tailwind.config.js - Updated global.css to use @media (prefers-color-scheme: dark) instead of .dark selector - This ensures NativeWind properly detects system color scheme on iOS/Android Co-Authored-By: peer@cal.com <peer@cal.com>
Co-Authored-By: unknown <>
…k-mode-1768828116
10 tasks
Contributor
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No issues found across 5 files
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.
What does this PR do?
Adds system dark mode support to the Companion app. The UI now follows the device theme across iOS, Android, and web, including tabs, screens, navigation, and the StatusBar.
Updates since last revision
useColorSchemehook with dynamic icon colors, dark mode backgrounds (dark:bg-black), borders (dark:border-[#38383A]), and ripple effectsdark:text-white,dark:text-[#8E8E93])Font Color Fixes
Fixed font visibility issues in booking-related components where
cal-*colors were invisible in dark mode:useColorSchemehook with dynamic icon colors, dark mode backgrounds and bordersdark:text-whiteanddark:text-[#8E8E93]to all text elements, dark mode button stylingPhase 2: Tab Pages
index.tsx,index.ios.tsx): Addeddark:variants for loading, error, empty, and filtered states; modals (create, action, new, delete) now support dark mode; search bar and buttons adapt to themeindex.tsx): Added dark mode support for filter controls, dropdown menu, and search inputindex.tsx): UpdatedblurEffectandbarTintColorto adapt to dark/light modeindex.tsx): Added dark mode support for menu items, delete account link, sign out button, and footer textPhase 1: Core Infrastructure
dark:variants for loading, error, empty, and default states using iOS system colors (dark:bg-black,dark:bg-[#1C1C1E],dark:text-gray-100)useColorSchemehook with iOS system colors object for dynamic icon/text colors, dark mode support for logo, filter dropdowns, sort menus, and profile sectionBase Infrastructure
userInterfaceStyle: "automatic"in app.json (iOS/Android/web)useColorSchemedarkMode: "media"andprefers-color-schemein CSSMandatory Tasks (DO NOT REMOVE)
How should this be tested?
Human Review Checklist
Checklist
Link to Devin run: https://app.devin.ai/sessions/8811e2e20a67433da57d5bcae9a17d2d
Requested by: Dhairyashil Shinde (@dhairyashiil)