refactor: replace hard-coded colors with semantic theme colors #26
+9
−9
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
Replaces hard-coded Tailwind color classes with shadcn/ui semantic theme colors for better dark mode support and maintainability.
Changes
todo-card.tsx
text-gray-500/text-gray-400/text-gray-600→text-muted-foreground(with opacity variants)text-blue-600→text-primary(image badge)text-red-600→text-destructive(overdue indicators)todo-list.page.tsx
text-gray-600/text-gray-500/text-gray-400→text-muted-foreground(with opacity variants)What Stayed the Same
Priority and status badge colors (
bg-green-100,bg-yellow-100,bg-red-100, etc.) were intentionally kept as they're functional semantic indicators:These are data visualization colors, not UI theme colors.
Benefits
✅ Theme-aware: Colors automatically adapt to light/dark mode
✅ Consistent: Uses shadcn/ui semantic color system
✅ Maintainable: Change entire theme by editing CSS variables in one place
✅ Professional: Avoids arbitrary hard-coded color choices
Before vs After
Before (hard-coded):
After (semantic):
Semantic Colors Used
text-muted-foreground- Subtle/secondary texttext-muted-foreground/70- Even more subtle (70% opacity)text-muted-foreground/40- Very subtle (40% opacity for emoji)text-primary- Primary accent colortext-destructive- Error/warning statesTesting
Part of UX improvement phase to follow shadcn/ui best practices.