Files
AudiOhm/frontend/lib/core/constants/api_constants.dart
T
root 85dad89d5b feat: Modernisation UI/UX et configuration Flutter multi-plateforme
Phase 1 - Corrections Critiques:
- Fixed memory leaks dans music_provider.dart (stream subscriptions)
- Fixed race conditions dans search_provider.dart (stale results)
- Fixed token refresh errors dans api_service.dart
- Improved error handling avec messages utilisateur
- Changed API URL to HTTPS by default

Phase 2 - Améliorations UX Desktop:
- Ajouté cursor pointers sur tous les éléments cliquables
- Implémenté hover states avec effets néon glow (200ms transitions)
- Créé skeleton loading states avec shimmer animation
- Ajouté widgets: ClickableWrapper, ErrorDisplay, SkeletonLoading
- Enhanced visual feedback pour desktop users

Phase 3 - Configuration Flutter:
- Configuré Android (Gradle 8.1.0, Kotlin 1.9.0, minSdk 21, targetSdk 34)
- Créé launcher icons cyberpunk néon (5 densités)
- Configuré Windows desktop (structure complète)
- Activé Linux desktop support
- Ajouté package équatable pour entités de domaine
- Corrigé imports (colors.dart, auth_provider.dart)
- Fixed Dio API compatibility (RequestOptions)

Documentation:
- STYLE_GUIDE.md: Guide complet (100+ pages)
- DESIGN_IMPLEMENTATION_GUIDE.md: Implémentation Flutter
- BUILD_STATUS.md: Status builds + troubleshooting
- QUICKSTART_BUILDS.md: Guide rapide
- BUILD_INDEX.md: Index documentation
- PHASE_1_CORRECTIONS.md: Corrections Phase 1
- PHASE_2_UX_IMPROVEMENTS.md: Améliorations Phase 2
- PR_REVIEW_SUMMARY.md: Revue code complète
- CODE_ANALYSIS_AND_PRIORITIES.md: Analyse code

Scripts & Builds:
- BUILD_ALL.sh: Script automatisé builds multi-plateforme
- builds/: Structure avec README par plateforme
- design-system/: Système de design complet

Backend:
- Ajouté streaming HTTP Range pour audio progressif
- Enhanced YouTube service avec métadonnées complètes
- Improved error handling et validation

Generated with [Claude Code](https://claude.com/claude-code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2026-01-19 07:44:40 +00:00

51 lines
1.7 KiB
Dart

/// API constants
class ApiConstants {
ApiConstants._();
// Base URLs
// Note: Using HTTPS for production. For local development, override with:
// flutter run --dart-define=API_BASE_URL=http://localhost:8000/api/v1
static const String baseUrl = String.fromEnvironment(
'API_BASE_URL',
defaultValue: 'https://api.audiOhm.com/api/v1', // Production HTTPS URL
);
static const String wsUrl = String.fromEnvironment(
'WS_BASE_URL',
defaultValue: 'wss://api.audiOhm.com', // Production WSS URL
);
// Timeout durations
static const int connectionTimeoutMs = 30000; // 30 seconds
static const int receiveTimeoutMs = 30000;
static const int sendTimeoutMs = 30000;
// API Endpoints
static const String auth = '/auth';
static const String music = '/music';
static const String playlists = '/playlists';
static const String library = '/library';
static const String search = '/search';
// Auth endpoints
static const String login = '/auth/login';
static const String register = '/auth/register';
static const String refresh = '/auth/refresh';
static const String logout = '/auth/logout';
static const String me = '/auth/me';
// Music endpoints
static const String tracks = '/music/tracks';
static const String artists = '/music/artists';
static const String albums = '/music/albums';
static const String searchMusic = '/music/search';
static const String stream = '/stream';
static const String recommendations = '/music/tracks';
static const String trending = '/music/trending';
// Playlist endpoints
static const String userPlaylists = '/playlists';
static const String playlistTracks = '/tracks';
static const String reorder = '/tracks/reorder';
}