Commit graph

529 commits

Author SHA1 Message Date
senke
fd8aae6a63 aesthetic-improvements: reduce more decorative cyan backgrounds (80/20 rule, batch 5)
- PostCard: poll progress bar background (bg-kodo-cyan/20 → bg-kodo-steel/20) - decorative visualization
- SharePostModal: quote option icon background (bg-kodo-cyan/10 → bg-kodo-steel/10, text-kodo-cyan → text-kodo-steel) - decorative icon
- TrackAnalyticsView: chart bar background (bg-kodo-cyan/20 → bg-kodo-steel/20) - decorative visualization
- Total: ~3 files, ~3 instances replaced
- Preserved: Active/selected states (QuizModal selected answer, CourseLearningView active lesson), primary actions
- Action 11.3.1.3 in progress (fifth batch: social and analytics decorative elements)
2026-01-16 11:13:36 +01:00
senke
f6afee0980 aesthetic-improvements: apply design direction to LibraryPage
- Spacing (8px grid): space-y-6 → space-y-8, gap-6 → gap-8 (2 instances), space-y-3 → space-y-4 (align to 8px grid)
- Card padding: p-6 → p-8 for loading skeleton cards (32px standard)
- Replace decorative gradients: track card cover and list view item number backgrounds from bg-gradient-to-br to solid bg-kodo-ink (2 instances)
- Preserved: Functional hover effects (hover:bg-white/5, hover:border-kodo-steel/50, group-hover:text-white), primary actions (cyan for selected states, genre badges), existing functional gradients (overlay for play button visibility)
- Action 11.5.1.4 complete 
2026-01-16 11:11:31 +01:00
senke
f7a81d8b8a aesthetic-improvements: apply design direction to DashboardPage
- Spacing (8px grid): space-y-6 → space-y-8, gap-6 → gap-8, space-y-3 → space-y-4 (align to 8px grid)
- Remove excessive hover effects: removed group-hover:scale-110 on stat card icons and activity item icons (decorative scale transforms)
- Replace decorative gradients: stat card backgrounds from bg-gradient-to-br to solid bg colors (from-kodo-cyan/10 to-kodo-cyan/5 → bg-kodo-cyan/10, etc.)
- Preserved: Functional hover effects (hover:bg-white/10, hover:border-kodo-steel/50), primary actions (cyan for primary stat), existing card padding (p-6/p-8 already aligned)
- Action 11.5.1.3 complete 
2026-01-16 11:10:17 +01:00
senke
6952b526b5 aesthetic-improvements: reduce informational cyan backgrounds (80/20 rule, batch 4)
- OfflineQueueManager: normal priority badge and info banner (2 instances) - informational status indicators
- Total: ~1 file, ~2 instances replaced
- Preserved: Active/selected states (select.tsx selected option), design system variants (badge.tsx cyan variant, StatCard.tsx cyan variant - intentional design system options), informational alerts/toasts (alert.tsx info, Toast.tsx info, ErrorDisplay.tsx info - important status indicators), BulkModeBanner active state (functional active mode indicator)
- Action 11.3.1.3 in progress (fourth batch: informational status indicators)
2026-01-16 11:08:45 +01:00
senke
730d8fcba8 aesthetic-improvements: replace Header decorative icon (80/20 rule, batch 3 follow-up)
- Header.tsx: decorative icon background (bg-kodo-cyan/20 → bg-kodo-steel/20, border-kodo-cyan/30 → border-kodo-steel/30, icon text-kodo-cyan → text-kodo-steel, shadow-neon-cyan/20 → shadow-2xl)
- Preserved: Header active notification state (isUserMenuOpen) - correctly keeps cyan
- Action 11.3.1.3 in progress (third batch follow-up)
2026-01-16 11:07:31 +01:00
senke
c37c08fd2e aesthetic-improvements: reduce more decorative cyan backgrounds (80/20 rule, batch 3)
- Layout components: Sidebar hub header icon, Header icon background (2 instances) - decorative icons
- AutoMetadataDetectionModal: modal border (decorative)
- CourseDetailView: card border (decorative)
- Total: ~4 files, ~4 instances replaced
- Preserved: Active/selected states (AudioPlayer dragged item, Header active notification, VisualizerSettingsModal selected mode, CreateProjectModal selected DAW, AIToolsView active tool, CourseLearningView active lesson, TipStreamerModal selected payment, CloudFileBrowser active tag, PlaylistDetailView dragged item, AddToPlaylistModal selected playlist, CreatorModal selected visibility)
- Action 11.3.1.3 in progress (third batch: layout and modal decorative elements)
2026-01-16 11:07:01 +01:00
senke
4dd1f64a7e aesthetic-improvements: reduce more decorative cyan backgrounds (80/20 rule, batch 2)
- Settings modals: DataExportView, ChangeEmailModal, PasskeyModal decorative icon backgrounds (3 instances)
- DashboardPage: chart bars and tooltip (decorative visualization, 2 instances)
- TwoFactorSetup: decorative icon background (1 instance)
- Total: ~6 files, ~6 instances replaced
- Preserved: Active/selected states (DashboardPage selected button, TrackList current track indicator, StudioView active tab, SessionManagement current session, AccountSettings selected theme, IntegrationsView connected state)
- Action 11.3.1.3 in progress (second batch: settings modals and chart visualization)
2026-01-16 11:05:45 +01:00
senke
73d7bbf3d7 aesthetic-improvements: reduce decorative cyan backgrounds (80/20 rule)
- KodoEmptyState: decorative background blur and border (bg-kodo-cyan/20 → bg-kodo-steel/20, border-kodo-cyan/30 → border-kodo-steel/30, icon text-kodo-cyan → text-kodo-steel)
- PWAInstallBanner: decorative icon background and blur effect (2 instances)
- Page headers: SettingsPage, GearPage, DeveloperPage, SocialPage icon backgrounds (4 instances) - decorative header icons
- DashboardPage: activity item icon gradient background (decorative)
- FileManagerView: selection banner background (decorative)
- Total: ~8 files, ~9 instances replaced
- Preserved: Active/selected states (StudioView active tab, AccountSettings selected theme, SessionManagement current session), primary actions, informational alerts
- Action 11.3.1.3 in progress (first batch: decorative backgrounds)
2026-01-16 11:03:48 +01:00
senke
bcf8ded605 aesthetic-improvements: replace remaining secondary cyan hover states with steel
- TrackListSelectionActions: clear selection button hover (1 instance)
- CreateGroupModal: upload zone placeholder text hover (1 instance)
- AddToPlaylistModal: new playlist button icon hover (1 instance)
- Total: ~3 files, ~3 instances replaced
- Preserved: Primary send button (ChatInput), all primary player controls, all primary CTAs
- Action 11.3.1.2 in progress (sixth batch complete)
2026-01-16 11:00:12 +01:00
senke
6a6c5caf9c aesthetic-improvements: replace secondary cyan hover states with steel (batch 5)
- PlayerControls: visualizer toggle hover text (1 instance)
- Header: theme toggle hover text (1 instance)
- PlaylistCard: checkbox hover border (1 instance)
- GearView: equipment card hover border (1 instance)
- ProfileView: track title hover text (1 instance)
- ProjectsManager: project title hover text (1 instance)
- CourseCard: course title hover text (1 instance)
- TwoFactorSetup: 2FA option hover states (2 instances: bg and text)
- Total: ~8 files, ~9 instances replaced
- Preserved: Active/selected states (cyan), primary actions (cyan)
- Action 11.3.1.2 in progress (fifth batch complete)
2026-01-16 10:59:09 +01:00
senke
6c7deabd00 aesthetic-improvements: replace DashboardPage activity item hover
- DashboardPage: activity item title hover text (1 instance)
- Completes batch 4 replacement
2026-01-16 10:57:30 +01:00
senke
77dfbaedf1 aesthetic-improvements: replace secondary cyan hover states with steel (batch 4)
- LibraryPage: card hover border, title hover text (3 instances, also removed scale transform)
- ProductCard: title hover text (1 instance)
- TrackListSelectionActions: action button hovers (5 instances: play, like, download, more, clear) - replaced with hover:bg-white/5
- AuthLayout: footer link hover text (1 instance)
- Pages: SocialPage, GearPage, DeveloperPage outline button hovers (3 instances)
- SocialPage: comment button hover text (1 instance)
- Total: ~8 files, ~14 instances replaced
- Preserved: Primary buttons (cyan), player control buttons (cyan - primary actions), AuthButton primary variant (cyan)
- Action 11.3.1.2 in progress (fourth batch complete)
2026-01-16 10:57:14 +01:00
senke
a2c93145bb aesthetic-improvements: replace secondary cyan hover states with steel (batch 3)
- UI components: accordion hover text (1 file)
- Player components: AudioPlayer, MiniPlayer icon button hovers (2 files, 3 instances)
- Social components: CreatePostModal, SharePostModal, ProductDetailView (3 files, 3 instances)
- Settings: AccessibilitySettingsView hover text (1 file)
- Analytics: TrackAnalyticsView, AnalyticsView chart bar hovers (2 files, 2 instances)
- Gamification: LeaderboardView hover text (1 file)
- Upload: FileUploadZone hover border (1 file)
- Banner: BulkModeBanner close button hover (1 file)
- Total: ~12 files, ~15 instances replaced
- Preserved: Focus rings (cyan), active/selected states (cyan), primary actions (cyan)
- Note: ChatSidebar selected state hover kept cyan (primary state)
- Note: VirtualizedChatMessages scroll button kept cyan (primary action)
- Action 11.3.1.2 in progress (third batch complete)
2026-01-16 10:55:42 +01:00
senke
e03533ec66 aesthetic-improvements: replace secondary cyan hover states with steel (batch 2)
- Card components: CartItem, WishlistView, PostCard, GroupCard, PlaylistsView, UserCard (7 files)
- Settings components: BackupsView, SessionManagement, CloudIntegrationView, OfflineQueueManager (4 files)
- DashboardPage: stat cards and activity items hover states (2 instances)
- FeedView: input and button hover states (2 instances)
- Upload zones: MetadataForm, CreatePlaylistModal, CreateProductView, AddEquipmentView, CreateGroupModal (5 files, 6 instances)
- UserCard: avatar border hover state
- Total: ~18 files, ~20 instances replaced
- Preserved: Focus rings (cyan), active/selected states (cyan)
- Action 11.3.1.2 in progress (second batch complete)
2026-01-16 10:53:34 +01:00
senke
af75d62a63 aesthetic-improvements: replace secondary cyan hover states with steel
- Button outline variant: hover:border-kodo-cyan/50 → hover:border-kodo-steel/50
- Header secondary nav: hover:text-kodo-cyan → hover:text-white, hover:bg-kodo-cyan/5 → hover:bg-white/5
- FileManagerView: hover:border-kodo-cyan/50 → hover:border-kodo-steel/50 (kept selected state cyan)
- ProjectsManager: hover:border-kodo-cyan/50 → hover:border-kodo-steel/50, hover:text-kodo-cyan → hover:text-white
- GroupDetailView: hover:border-kodo-cyan/30 → hover:border-kodo-steel/50
- AIToolsView: hover:border-kodo-cyan/50 → hover:border-kodo-steel/50
- CloudFileBrowser: hover:border-kodo-cyan/50 → hover:border-kodo-steel/50 (kept selected state cyan)
- ProfileView: hover:border-kodo-cyan/50 → hover:border-kodo-steel/50
- CourseCard: hover:border-kodo-cyan/50 → hover:border-kodo-steel/50
- TwoFactorSetup: hover:border-kodo-cyan → hover:border-kodo-steel/50
- GearView: hover:text-kodo-cyan → hover:text-white, hover:border-kodo-cyan → hover:border-kodo-steel/50
- ChatInput: hover:text-kodo-cyan → hover:text-white (3 instances)
- ChatMessage: hover:text-kodo-cyan → hover:text-white (2 instances)
- ChatRoom: hover:text-kodo-cyan → hover:text-white
- AddToPlaylistModal: hover:border-kodo-cyan → hover:border-kodo-steel/50, hover:text-kodo-cyan → hover:text-white
- Preserved focus rings (cyan) and active/selected states (cyan) as per audit
- Action 11.3.1.2 in progress (first batch of ~15 files)
2026-01-16 10:51:30 +01:00
senke
f02c68cfad aesthetic-improvements: enhance design direction checklist
- Expanded basic checklist into comprehensive implementation guide
- Added detailed sections: Color (80/20 rule), Spacing (8px grid), Interactions, Visual Elements
- Added component-specific checks: Buttons, Cards, Navigation, Forms, Pages
- Included specific Tailwind classes and values for each check
- Added 'keep vs remove' guidance for hover effects and visual elements
- Added final validation section for overall assessment
- Provides actionable, step-by-step guidance for applying Surgical Minimalism
- Action 11.5.1.2 complete
2026-01-16 10:48:00 +01:00
senke
576a099e3b aesthetic-improvements: document Surgical Minimalism design direction
- Created comprehensive design direction document
- Defined 6 core principles: 80/20 color rule, increased whitespace, subtle interactions, gradients used sparingly, 8px grid system, text color hierarchy
- Documented design tokens and color usage guidelines
- Added implementation checklist for applying principles
- Included good vs avoid examples with code snippets
- Documented migration path and references to audit documents
- Aligns with all completed aesthetic improvement actions
- Serves as foundation for future design work
- Action 11.5.1.1 complete
2026-01-16 10:46:34 +01:00
senke
170ab38750 aesthetic-improvements: add consistent section spacing utility variables
- Added --section-spacing: 2rem (32px) for standard section spacing
- Added --section-spacing-lg: 3rem (48px) for large section spacing
- Both values align to 8px grid system (32px = 4× base, 48px = 6× base)
- Values match spacing increases from Action 11.4.3.3
- Documentation added with usage examples
- Provides reusable utility for consistent section spacing across pages
- Action 11.4.3.4 complete
2026-01-16 10:44:55 +01:00
senke
cd97eaf8d1 aesthetic-improvements: increase spacing between sections across all pages
- Increased DashboardPage main container from space-y-8 (32px) to space-y-12 (48px)
- Increased standard section spacing from space-y-6 (24px) to space-y-8 (32px) in 8 pages:
  EducationPage, SettingsPage, QueuePage, GearPage, LivePage, DeveloperPage, SocialPage, SearchPage
- All values align to 8px grid system (32px = 4× base, 48px = 6× base)
- Provides more whitespace between major sections, improving visual hierarchy
- Aligns with Surgical Minimalism principle of increased whitespace
- Total: 9 pages updated
- Action 11.4.3.3 complete
2026-01-16 10:43:42 +01:00
senke
3f2b991018 aesthetic-improvements: audit section spacing across all pages
- Created comprehensive audit document documenting all section spacing values
- Audited 12+ pages: DashboardPage, EducationPage, SettingsPage, QueuePage, GearPage, LivePage, DeveloperPage, SearchPage, ProfilePage, AnalyticsPage, AdminDashboardPage, DesignSystemDemoPage
- Documented spacing patterns: space-y-4 (16px), space-y-6 (24px), space-y-8 (32px), space-y-12 (48px)
- Documented grid gaps: gap-4 (16px), gap-6 (24px), gap-8 (32px)
- Documented page padding: p-6 (24px), p-8 (32px), px-4 py-8 (16px/32px)
- Verified all values align to 8px grid system
- Provided recommendations for increasing whitespace in next action
- Most common spacing: space-y-6 (24px) used in 7+ pages
- Action 11.4.3.2 complete
2026-01-16 10:41:53 +01:00
senke
56cd45aeb8 aesthetic-improvements: increase card padding for more whitespace
- Increased CardHeader padding from p-6 (24px) to p-8 (32px)
- Increased CardContent padding from p-6 (24px) to p-8 (32px)
- Increased CardFooter padding from p-6 (24px) to p-8 (32px)
- All values align to 8px grid system (32px = 4× base)
- Provides more breathing room and improves visual hierarchy
- Aligns with Surgical Minimalism principle of increased whitespace
- Action 11.4.3.1 complete
2026-01-16 10:39:37 +01:00
senke
626f404761 aesthetic-improvements: verify gradients are only in hero sections
- Created verification document documenting all remaining gradients
- Verified 12 remaining gradients are appropriate:
  - 6 in hero/featured sections (DiscoverView, ProfileView, SocialView, LiveView)
  - 1 functional overlay for text readability
  - 5 decorative elements (icon containers, visualizations)
- Confirmed no gradients on card backgrounds
- All gradients used sparingly and appropriately, aligning with Surgical Minimalism
- Action 11.4.2.2 complete
2026-01-16 10:38:05 +01:00
senke
9175199107 aesthetic-improvements: remove gradients from card components
- Removed decorative hover gradient overlay from UserCard
- Replaced gradient backgrounds with solid colors in PostCard, MyCoursesView, DiscoverView
- Genre cards now use solid bg-kodo-graphite with border instead of colorful gradients
- All card components now use solid backgrounds, aligning with Surgical Minimalism
- Updated 4 files: UserCard, PostCard, MyCoursesView, DiscoverView
- Action 11.4.2.1 complete
2026-01-16 10:36:29 +01:00
senke
af96f59c88 aesthetic-improvements: remove excessive hover effects from high-priority files
- Removed scale transforms (hover:scale-[1.02], hover:scale-110, group-hover:scale-110/105) from cards and images
- Removed decorative shadow/glow effects (hover:shadow-neon-cyan/20, hover:shadow-lg) from cards
- Removed hover-lift class (translateY + shadow) from base Card and Button components
- Replaced excessive effects with subtle hover:bg-white/5 or hover:opacity-90
- Preserved functional hover states (group-hover:opacity-100 for play overlays, hover:bg-accent/50 for interactive feedback)
- Updated 14 files: ProductCard, TrackCard, CourseCard, EquipmentCard, PostCard, ProfileView, card.tsx, SearchPage, PlayerControls, OrderSummary, DiscoverView, PlaylistCard, Sidebar, button.tsx
- Effects are now subtle and purposeful, aligning with Surgical Minimalism
- Action 11.4.1.3 complete
2026-01-16 10:34:41 +01:00
senke
72724baa32 aesthetic-improvements: categorize hover effects as necessary vs excessive
- Enhanced audit document with detailed file-by-file categorization
- Identified 6 high-priority files with multiple excessive effects
- Identified 6 medium-priority files with single excessive effects
- Identified 3 files with mixed effects requiring selective removal
- Categorized ~400 instances as necessary (keep)
- Categorized ~200 instances as excessive (remove)
- Categorized ~150 instances as review (context-dependent)
- Specific patterns identified for removal: scale transforms, decorative shadows, image zooms
- Action 11.4.1.2 complete
2026-01-16 10:31:38 +01:00
senke
5b40d2c112 aesthetic-improvements: audit hover effects across codebase
- Found 887 instances across 239 files
- Categorized into 5 usage types (necessary, excessive, group hover, transitions, opacity)
- Identified excessive patterns: scale transforms, shadow/glow, multiple simultaneous effects
- Documented high-impact files requiring changes
- Current: ~887 effects, Target: reduce by 30-40% (remove decorative, keep interactive)
- Action 11.4.1.1 complete
2026-01-16 10:28:21 +01:00
senke
7fe1484de3 aesthetic-improvements: add automated contrast testing for WCAG compliance
- Created contrast utility (apps/web/src/utils/contrast.ts)
  - getRelativeLuminance() - calculates WCAG relative luminance
  - getContrastRatio() - calculates contrast ratio between colors
  - meetsWCAGAA() / meetsWCAGAAA() - validates WCAG standards
  - parseRGB() - parses RGB strings from CSS variables
- Created contrast test suite (apps/web/src/__tests__/contrast.test.ts)
  - Tests all design system color combinations
  - Validates primary text (white) on all backgrounds
  - Validates secondary text (dim) on all backgrounds
  - Validates text with opacity variants
  - All combinations must meet WCAG AA (4.5:1)
- Added contrast test step to CI workflow
- Prevents contrast ratio regressions
- Action 11.1.1.5 complete
2026-01-16 10:26:20 +01:00
senke
19272cd48e aesthetic-improvements: test WCAG AA compliance for all text colors
- Created comprehensive contrast test report
- Tested all text color combinations (white, dim, opacity variants)
- Tested on all 5 background colors (void, ink, graphite, slate, steel)
- All combinations exceed 4.5:1 ratio requirement
- Primary text: 15.9:1 to 20.6:1 (excellent)
- Secondary text: 6.1:1 to 7.8:1 (good)
- Text with opacity: 11.8:1 to 16.2:1 (excellent)
- No violations found - all text meets WCAG AA
- Action 11.1.1.3 complete
2026-01-16 10:18:46 +01:00
senke
12a4624c9e aesthetic-improvements: audit cyan usage across codebase
- Found 965 instances across 217 files
- Categorized into 6 usage types (primary, secondary, decorative, informational, focus, text)
- Created comprehensive audit document with recommendations
- Identified high-impact files for replacement
- Current: ~40% cyan usage, Target: ~20% (80/20 rule)
- Action 11.3.1.1 complete
2026-01-16 10:16:08 +01:00
senke
1a82329622 aesthetic-improvements: use dim text sparingly for better contrast
- Updated button variants (outline, ghost) to use text-white
- Updated empty state descriptions to use text-white with opacity
- Updated page subtitles to use text-white opacity-80
- Updated Navbar interactive elements to use text-white
- Preserved text-kodo-secondary for truly secondary info (metadata, timestamps, helper text)
- Action 11.1.1.2 complete
2026-01-16 10:14:17 +01:00
senke
cc12bf6304 aesthetic-improvements: verify spacing scale aligns to 8px grid
- Verified all spacing values in design-tokens.css
- Documented 8px-aligned values (8 values) vs non-aligned (5 values)
- Updated comments with 8px grid alignment status
- Added recommendations to prefer 8px-aligned values
- Action 11.2.1.2 complete
2026-01-16 10:04:40 +01:00
senke
feea64b2d5 aesthetic-improvements: document 8px grid system
- Created GRID_SYSTEM.md documentation
- Documents 8px base grid system for visual rhythm
- Spacing scale table with 8px-aligned values
- Usage guidelines and examples
- Migration notes for current spacing system
- Action 11.2.1.1 complete
2026-01-16 02:36:07 +01:00
senke
3b7631d193 aesthetic-improvements: change primary text color to white
- Changed --kodo-text-main from #F3F3E0 (Quiet Paper) to #FFFFFF (white)
- Improves contrast and readability on dark backgrounds
- Better WCAG AA compliance
- Action 11.1.1.1 complete
2026-01-16 02:34:55 +01:00
senke
e70c1c4ed0 cognitive-load: add first-time user detection utility
- Created firstTime utility for detecting first-time users
- Functions: isFirstTime, markAsNotFirstTime, isOnboardingCompleted, markOnboardingCompleted
- Uses localStorage to persist state across sessions
- Graceful error handling with logger warnings
- SSR-safe (returns false on server)
- Can be integrated with Onboarding component
- Action 10.4.1.4 complete
2026-01-16 02:33:46 +01:00
senke
2e23b996d6 cognitive-load: create onboarding flow component for new users
- Created Onboarding component with multi-step flow
- Progress indicator shows current and completed steps
- Navigation: Next, Previous, Skip buttons
- Uses Dialog component for modal display
- Supports custom content per step
- French labels for UI
- Action 10.4.1.3 complete
2026-01-16 02:32:53 +01:00
senke
3f1e36d6fc cognitive-load: make view mode toggle less prominent on LibraryPage
- Moved view mode toggle from two prominent buttons to dropdown menu
- Single button shows current view mode icon (Grid or List)
- Dropdown contains both view options with icons and labels
- Active option highlighted in dropdown
- Reduces visual prominence while preserving functionality
- List view kept as per audit recommendation
- Action 10.2.1.2 complete
2026-01-16 02:31:43 +01:00
senke
ea7e45c1a2 cognitive-load: convert Collapsible to Accordion on dashboard
- Replaced Collapsible component with Accordion for Activity Feed section
- Uses AccordionItem, AccordionTrigger, and AccordionContent
- Accordion wraps the Tabs component (Chart and Activity tabs)
- Configuration: type='single', collapsible=true (starts closed)
- Improves consistency by using standardized Accordion component
- Action 10.1.1.5 complete
2026-01-16 02:30:39 +01:00
senke
8bc570cfda cognitive-load: organize secondary info in tabs on dashboard
- Added Tabs component to organize Activity Feed content
- Chart and Activity List now in separate tabs (Graphique, Activité)
- Reduces cognitive load by showing one view at a time
- Default tab is 'Graphique' (Chart)
- Tabs are inside the collapsible Activity Feed section
- Action 10.1.1.3 complete
2026-01-16 02:28:58 +01:00
senke
e7bec689b0 cognitive-load: show only 2 key metrics on dashboard, hide rest behind View All
- Added progressive disclosure for dashboard metrics
- Shows first 2 metrics (Pistes écoutées, Messages envoyés) initially
- Hides Favoris and Amis actifs behind 'Voir tout' button
- Added 'Voir moins' button to collapse back to 2 metrics
- Reduces cognitive load by showing only essential metrics first
- Action 10.1.1.1 complete
2026-01-16 02:27:26 +01:00
senke
73ef38872e cognitive-load: add clear filters button to LibraryPage
- Added clear filters button inside AdvancedFilters component
- Button only visible when filters are active
- Clears all filters: search, genre, format, sort
- Uses RotateCcw icon and outline button variant
- Improves UX by allowing quick filter reset
- Action 10.3.1.3 complete
2026-01-16 02:25:46 +01:00
senke
b12c58868c cognitive-load: hide advanced filters behind AdvancedFilters component
- Wrapped Genre, Format, and Sort filters in AdvancedFilters component
- Search input remains visible (basic functionality)
- Advanced filters hidden by default, expandable on demand
- Added tooltip to AdvancedFilters explaining functionality
- Reduces cognitive load through progressive disclosure
- Action 10.3.1.2 complete
2026-01-16 02:24:14 +01:00
senke
7ab4e03ded cognitive-load: add tooltips to advanced features
- Added optional tooltip prop to AdvancedFilters component
- Added tooltips to LibraryPage view mode toggles (Grid/List)
- Added tooltip to LibraryPage sort button
- Added context-aware tooltip to LibraryPage bulk mode button
- Tooltips explain functionality and improve discoverability
- Action 10.4.1.2 complete
2026-01-16 02:22:41 +01:00
senke
ed1af8b290 cognitive-load: create AdvancedFilters component
- Created collapsible AdvancedFilters component for progressive disclosure
- Uses existing Collapsible component for consistency
- Supports controlled and uncontrolled modes
- Customizable label and optional filter icon
- Follows Kodo design system styling
- Ready to wrap Genre, Format, and Sort filters in LibraryPage
- Action 10.3.1.1 complete
2026-01-16 02:20:26 +01:00
senke
8949ac46f1 consistency: add visual test page for Input component
- Added comprehensive visual test section to DesignSystemDemoPage
- Tests basic states (normal, with value, disabled, disabled with value)
- Tests 8 input types (text, email, password, number, search, url, tel, date)
- Tests width variations (full, half, fixed)
- Tests placeholder variations (with, without, long, short)
- Available at /design-system route for visual verification
- Action 9.5.1.6 complete
2026-01-16 02:18:06 +01:00
senke
3721274760 consistency: add visual test page for button variants
- Added comprehensive visual test section to DesignSystemDemoPage
- Tests all 5 variants (default, destructive, outline, secondary, ghost)
- Tests all 4 sizes (sm, default, lg, icon)
- Tests all variant × size combinations (20 total)
- Tests normal and disabled states
- Available at /design-system route for visual verification
- Action 9.3.1.6 complete
2026-01-16 02:17:01 +01:00
senke
e30acf15cf consistency: add JSDoc documentation for button variants
- Added comprehensive JSDoc comments for buttonVariants
- Documented all 5 variants (default, destructive, outline, secondary, ghost) with use cases
- Documented all 4 sizes (default, sm, lg, icon) with descriptions
- Added ButtonProps interface documentation with examples
- Added Button component documentation with usage examples
- Action 9.3.1.5 complete
2026-01-16 02:15:30 +01:00
senke
2152224fdf consistency: simplify button glow effects
- Removed excessive glows from button variants
- default: removed base glow, reduced hover glow (30px→15px, opacity 0.5→0.3)
- destructive: removed hover glow
- outline: removed hover glow
- Buttons now have minimal, subtle glows for better visual hierarchy
- Action 9.3.1.4 complete
2026-01-16 02:14:52 +01:00
senke
216c4c6f52 consistency: remove unused button variants (neon, glass, premium, link)
- Removed neon, glass, premium, and link variants from Button component
- Replaced variant="link" in PostCard with variant="ghost" (with underline)
- Replaced variant="premium" in LibraryPage and FAB with variant="default"
- Updated COMPONENT_USAGE.md to reflect removed variants
- Remaining variants: default, destructive, outline, secondary, ghost
- Action 9.3.1.2 complete
2026-01-16 02:13:51 +01:00
senke
31c5b1aef2 consistency: replace custom components with design system components
- Fixed UserCard: removed invalid Card variant prop, fixed Button variants
- Fixed LicenceCard: removed invalid Card variant prop, fixed Button variants
- Replaced FormField Input with design system Input (removed Tailwind defaults)
- Replaced FormField Textarea with design system Textarea (removed Tailwind defaults)
- Replaced FormField Select with design system Select (maintained backward compatibility)
- All components now use design system components with proper error handling
- Action 9.2.1.6 complete
2026-01-16 02:11:40 +01:00
senke
3a90ee4747 consistency: create component usage guide
- Created comprehensive guide documenting design system components
- Documents Button, Card, Input, Select, Dialog, Alert, Badge components
- Includes use cases, variants, sizes, examples, and best practices
- Provides migration guide for custom implementations
- Action 9.2.1.4 complete
2026-01-16 02:08:56 +01:00