# 🎨 Awesome Theme System Complete multi-theme system with 8 stunning color palettes and light/dark mode support! ## ✅ Features ### Dual Mode Support - **Light Mode** - Clean, bright interface - **Dark Mode** - Easy on the eyes - **System** - Follows OS preference - Smooth transitions between modes ### 8 Beautiful Color Palettes Each palette includes primary, secondary, and accent colors with light/dark variants and custom gradients. #### 1. Awesome Purple (Default) 💜💗💛 Our signature theme! - **Primary:** #DA22FF (Vibrant Purple) - **Secondary:** #FF69B4 (Hot Pink) - **Accent:** #FFD700 (Gold) - **Gradient:** Purple → Purple Dark → Gold - **Perfect For:** Brand consistency, maximum awesomeness #### 2. Royal Violet 👑 Deep, regal purple with sophisticated blues - **Primary:** #7C3AED (Royal Purple) - **Secondary:** #6366F1 (Indigo) - **Accent:** #94A3B8 (Silver) - **Gradient:** Purple → Indigo → Silver - **Perfect For:** Professional, elegant look #### 3. Cosmic Purple 🌌 Space-inspired with cosmic vibes - **Primary:** #8B5CF6 (Cosmic Purple) - **Secondary:** #EC4899 (Magenta) - **Accent:** #06B6D4 (Cyan) - **Gradient:** Purple → Magenta → Cyan - **Perfect For:** Modern, futuristic feel #### 4. Purple Sunset 🌅 Warm purples with orange and coral - **Primary:** #A855F7 (Lavender) - **Secondary:** #F97316 (Orange) - **Accent:** #FB7185 (Coral) - **Gradient:** Lavender → Orange → Coral - **Perfect For:** Warm, inviting atmosphere #### 5. Lavender Dreams 🌸 Soft, pastel purples with mint accents - **Primary:** #C084FC (Soft Purple) - **Secondary:** #F9A8D4 (Pastel Pink) - **Accent:** #86EFAC (Mint Green) - **Gradient:** Soft Purple → Pastel Pink → Mint - **Perfect For:** Gentle, calming aesthetic #### 6. Neon Purple ⚡ Electric, bright neon vibes - **Primary:** #D946EF (Neon Purple) - **Secondary:** #F0ABFC (Neon Pink) - **Accent:** #22D3EE (Neon Cyan) - **Gradient:** Neon Purple → Neon Pink → Neon Cyan - **Perfect For:** Bold, energetic look #### 7. Galaxy Purple 🌟 Deep cosmic purple with starlight gold - **Primary:** #6D28D9 (Deep Purple) - **Secondary:** #7C3AED (Galaxy Purple) - **Accent:** #FBBF24 (Star Gold) - **Gradient:** Deep Purple → Galaxy → Star Gold - **Perfect For:** Mysterious, cosmic theme #### 8. Berry Blast 🍇 Rich purples with wine and berry tones - **Primary:** #9333EA (Berry Purple) - **Secondary:** #BE123C (Wine Red) - **Accent:** #FB923C (Peach) - **Gradient:** Berry → Wine → Peach - **Perfect For:** Rich, luxurious feel ## 🎯 Components ### ThemeSwitcher **Location:** `/components/theme/theme-switcher.tsx` Beautiful dropdown with: - **Mode Toggle** - Light/Dark buttons - **Palette Selector** - Visual color previews - **Gradient Bars** - Live preview of each theme - **Check Marks** - Active selection indicator - **Descriptions** - Helpful palette info **Features:** - Accessible with keyboard navigation - Saves preference to localStorage - Smooth transitions - Mobile-friendly - Beautiful hover effects ### AppHeader **Location:** `/components/layout/app-header.tsx` Sticky top navigation with: - **Logo** - Gradient background, scales on hover - **Navigation** - Home, Search, Browse - **Search Button** - With ⌘K hint - **Theme Switcher** - Positioned for easy access - **Mobile Menu** - Sheet for small screens **Features:** - Sticky positioning - Backdrop blur effect - Shadow on scroll - Responsive design - Active route highlighting ## 🔧 Technical Implementation ### Theme Configuration **File:** `/lib/themes.ts` ```typescript interface ColorPalette { id: string name: string description: string colors: { primary: string primaryLight: string primaryDark: string secondary: string secondaryLight: string secondaryDark: string accent: string accentLight: string accentDark: string } gradient: string } ``` ### Dynamic CSS Variables All colors are applied via CSS custom properties: ```css :root { --color-primary: #DA22FF; --color-secondary: #FF69B4; --color-accent: #FFD700; --gradient-awesome: linear-gradient(...); /* ... and more */ } ``` ### Gradient Classes **Dynamic theme support:** ```css .gradient-text { background: var(--gradient-awesome); -webkit-background-clip: text; -webkit-text-fill-color: transparent; } .btn-awesome { background: var(--gradient-awesome); } .bg-gradient-awesome { background: var(--gradient-awesome); } ``` ## 📱 Usage ### Switching Themes **For Users:** 1. Click the theme icon in top-right header 2. Select Light or Dark mode 3. Choose from 8 color palettes 4. See changes instantly! **Persistence:** - Mode preference saved by `next-themes` - Palette choice saved in localStorage - Survives page refresh - Works across tabs ### For Developers **Using theme colors in components:** ```tsx // CSS classes