85dad89d5b
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>
58 lines
1.4 KiB
Bash
58 lines
1.4 KiB
Bash
#!/bin/bash
|
|
|
|
echo "========================================"
|
|
echo " SPOTIFY LE 2 - DÉMARRAGE"
|
|
echo "========================================"
|
|
echo ""
|
|
|
|
# Vérifier que l'installation a été faite
|
|
if [ ! -d "backend/venv" ]; then
|
|
echo "[ERREUR] Backend n'est pas installé!"
|
|
echo "Lancez INSTALL.sh d'abord."
|
|
exit 1
|
|
fi
|
|
|
|
echo "[1/3] Démarrage du Backend FastAPI..."
|
|
cd backend
|
|
source venv/bin/activate
|
|
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000 &
|
|
BACKEND_PID=$!
|
|
echo "[OK] Backend démarré (PID: $BACKEND_PID)"
|
|
|
|
echo ""
|
|
echo "[2/3] Attente du backend (5 secondes)..."
|
|
sleep 5
|
|
|
|
echo ""
|
|
echo "[3/3] Démarrage du Frontend Flutter..."
|
|
cd ../frontend
|
|
|
|
# Detecter la plateforme
|
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
# macOS
|
|
echo "Détection automatique de la plateforme..."
|
|
PLATFORM=$(flutter devices | grep -E "macos|windows|android|chrome" | head -1 | awk '{print $1}')
|
|
else
|
|
# Linux
|
|
echo "Choisissez la plateforme:"
|
|
echo " 1. Web (Chrome) - Recommandé pour le debug"
|
|
echo " 2. Linux Desktop"
|
|
echo " 3. Android (Émulateur ou appareil)"
|
|
echo ""
|
|
read -p "Votre choix (1, 2 ou 3): " choice
|
|
|
|
if [ "$choice" == "1" ]; then
|
|
PLATFORM="chrome"
|
|
elif [ "$choice" == "2" ]; then
|
|
PLATFORM="linux"
|
|
else
|
|
PLATFORM="android"
|
|
fi
|
|
fi
|
|
|
|
echo "Lancement sur $PLATFORM..."
|
|
flutter run -d $PLATFORM
|
|
|
|
# Nettoyage à la fermeture
|
|
kill $BACKEND_PID 2>/dev/null
|