# 🚀 Commandes Utiles - AfterWork Guide de référence rapide des commandes les plus utilisées pour le développement. --- ## 📦 Installation et Configuration ```bash # Installer les dépendances flutter pub get # Mettre à jour les dépendances flutter pub upgrade # Vérifier l'installation Flutter flutter doctor # Vérifier les dépendances obsolètes flutter pub outdated ``` --- ## 🧹 Nettoyage ```bash # Nettoyage Flutter complet flutter clean # Nettoyage avec script (Windows) .\scripts\clean.ps1 # Nettoyage avec script (Linux/macOS) ./scripts/clean.sh # Supprimer les fichiers de build manuellement rm -rf build/ .dart_tool/ pubspec.lock ``` --- ## 🔍 Analyse et Qualité ```bash # Analyser le code (linting) flutter analyze # Formater tout le code dart format . # Formater un fichier spécifique dart format lib/main.dart # Vérifier le formatage sans modifier dart format --output=none --set-exit-if-changed . # Appliquer les corrections automatiques dart fix --apply # Voir les corrections disponibles dart fix --dry-run ``` --- ## 🧪 Tests ```bash # Lancer tous les tests flutter test # Lancer les tests avec coverage flutter test --coverage # Lancer un test spécifique flutter test test/domain/entities/user_test.dart # Lancer les tests en mode watch flutter test --watch # Générer le rapport de coverage HTML genhtml coverage/lcov.info -o coverage/html ``` --- ## 🏃 Exécution ```bash # Lancer en mode debug (défaut) flutter run # Lancer en mode release flutter run --release # Lancer en mode profile flutter run --profile # Lancer avec variables d'environnement flutter run --dart-define=ENVIRONMENT=development # Lancer sur un device spécifique flutter run -d chrome flutter run -d windows flutter run -d # Lister les devices disponibles flutter devices # Hot reload (pendant l'exécution) # Appuyer sur 'r' dans le terminal # Hot restart (pendant l'exécution) # Appuyer sur 'R' dans le terminal ``` --- ## 🏗 Build ### Android ```bash # Build APK debug flutter build apk --debug # Build APK release flutter build apk --release # Build App Bundle (pour Play Store) flutter build appbundle --release # Build avec split par ABI (réduit la taille) flutter build apk --split-per-abi ``` ### iOS ```bash # Build iOS flutter build ios --release # Build IPA flutter build ipa --release # Ouvrir Xcode open ios/Runner.xcworkspace ``` ### Web ```bash # Build web flutter build web --release # Build web avec renderer HTML flutter build web --web-renderer html # Build web avec renderer CanvasKit flutter build web --web-renderer canvaskit # Servir localement flutter run -d chrome ``` ### Windows ```bash # Build Windows flutter build windows --release ``` ### Linux ```bash # Build Linux flutter build linux --release ``` ### macOS ```bash # Build macOS flutter build macos --release ``` --- ## 📱 Gestion des Devices ```bash # Lister les devices flutter devices # Lister les emulators flutter emulators # Lancer un emulator flutter emulators --launch # Créer un emulator Android flutter emulators --create # Informations sur les devices connectés adb devices ``` --- ## 🔧 Génération de Code ```bash # Générer les fichiers (si build_runner est utilisé) flutter pub run build_runner build # Générer avec suppression des conflits flutter pub run build_runner build --delete-conflicting-outputs # Générer en mode watch flutter pub run build_runner watch # Générer les icônes d'application flutter pub run flutter_launcher_icons ``` --- ## 📊 Performance et Profiling ```bash # Analyser la performance flutter run --profile # Ouvrir DevTools flutter pub global activate devtools flutter pub global run devtools # Analyser la taille de l'app flutter build apk --analyze-size flutter build appbundle --analyze-size # Mesurer le temps de build flutter build apk --verbose ``` --- ## 🐛 Debug ```bash # Logs en temps réel flutter logs # Logs avec filtre flutter logs --device-id # Nettoyer les logs flutter logs --clear # Inspecter l'app flutter attach # Screenshot flutter screenshot ``` --- ## 📦 Dépendances ```bash # Ajouter une dépendance flutter pub add # Ajouter une dev dependency flutter pub add --dev # Supprimer une dépendance flutter pub remove # Mettre à jour une dépendance spécifique flutter pub upgrade # Voir l'arbre des dépendances flutter pub deps # Voir les dépendances obsolètes flutter pub outdated ``` --- ## 🔐 Sécurité et Secrets ```bash # Lancer avec variables d'environnement flutter run \ --dart-define=API_BASE_URL=https://api.example.com \ --dart-define=ENVIRONMENT=production # Build avec secrets flutter build apk \ --dart-define=API_BASE_URL=https://api.example.com \ --dart-define=GOOGLE_MAPS_API_KEY=your_key_here ``` --- ## 🌐 Internationalisation ```bash # Générer les fichiers de traduction flutter gen-l10n # Avec configuration personnalisée flutter gen-l10n --arb-dir=lib/l10n --output-dir=lib/generated ``` --- ## 📝 Git Workflow ```bash # Créer une branche feature git checkout -b feature/nom-feature # Créer une branche bugfix git checkout -b fix/nom-bug # Commit avec message conventionnel git commit -m "feat: ajouter nouvelle fonctionnalité" git commit -m "fix: corriger bug dans login" git commit -m "docs: mettre à jour README" # Push vers origin git push origin feature/nom-feature # Mettre à jour depuis main git pull origin main --rebase ``` --- ## 🔄 Mise à Jour Flutter ```bash # Mettre à jour Flutter flutter upgrade # Changer de canal flutter channel stable flutter channel beta flutter channel dev # Downgrade vers une version spécifique flutter downgrade # Voir la version actuelle flutter --version ``` --- ## 🛠 Outils Utiles ```bash # Vérifier la configuration flutter config # Activer/désactiver les plateformes flutter config --enable-web flutter config --enable-windows-desktop flutter config --enable-linux-desktop flutter config --enable-macos-desktop # Nettoyer le cache flutter pub cache clean flutter pub cache repair # Voir les informations système flutter doctor -v ``` --- ## 📱 Android Spécifique ```bash # Lister les devices Android adb devices # Installer l'APK manuellement adb install build/app/outputs/flutter-apk/app-release.apk # Désinstaller l'app adb uninstall com.example.afterwork # Logs Android adb logcat # Nettoyer le build Android cd android && ./gradlew clean && cd .. ``` --- ## 🍎 iOS Spécifique ```bash # Nettoyer le build iOS cd ios && rm -rf Pods/ Podfile.lock && pod install && cd .. # Mettre à jour les pods cd ios && pod update && cd .. # Ouvrir Xcode open ios/Runner.xcworkspace # Lister les simulateurs xcrun simctl list devices ``` --- ## 📊 Métriques et Reporting ```bash # Analyser la taille de l'app flutter build apk --analyze-size --target-platform android-arm64 # Générer un rapport de dépendances flutter pub deps --style=compact > dependencies.txt # Compter les lignes de code find lib -name '*.dart' | xargs wc -l ``` --- ## 🚀 Raccourcis Pratiques ```bash # Alias utiles à ajouter dans votre .bashrc ou .zshrc alias frun='flutter run' alias fbuild='flutter build' alias ftest='flutter test' alias fclean='flutter clean && flutter pub get' alias fanalyze='flutter analyze' alias fformat='dart format .' alias fpub='flutter pub get' ``` --- ## 💡 Tips ### Pendant le Développement - Utilisez `r` pour hot reload - Utilisez `R` pour hot restart - Utilisez `p` pour afficher le widget tree - Utilisez `o` pour basculer iOS/Android - Utilisez `q` pour quitter ### Performance - Toujours tester en mode `--profile` pour les performances - Utiliser `const` autant que possible - Éviter les rebuilds inutiles ### Debug - Utilisez `debugPrint()` au lieu de `print()` - Utilisez le logger pour les logs structurés - Activez les DevTools pour le profiling ---
**Guide des commandes Flutter - AfterWork** Pour plus d'informations : [Documentation Flutter](https://flutter.dev/docs)