# Search Feature ## Overview Real-time search with debouncing across tracks, artists, and albums. ## Usage - Access from sidebar (desktop) or bottom nav (mobile) - Type to search with 500ms debounce - Results grouped by type - Tap track to play immediately - Tap artist/album for details (TODO) ## Components - `SearchProvider` - State management with debouncing - `SearchPage` - Adaptive UI (desktop/mobile) - `SearchTrackCard`, `SearchArtistCard`, `SearchAlbumCard` - Result cards - `CachedNetworkImageWithFallback` - Reusable image widget ## Architecture - Uses typed entities (Track, Artist, Album) from domain layer - Integrates with MusicApiService for backend calls - Connects to PlayerNotifier for playback ## Testing Test stubs created at: - `test/presentation/providers/search_provider_test.dart` - `test/presentation/pages/search/search_page_test.dart`