name, category, public, database, hosting_hints, audit_stack, plugins
name
category
public
database
hosting_hints
audit_stack
plugins
mobile-flutter
mobile
true
optional
app-store
play-store
huawei-appgallery
web-hosting
desktop-distribution
analyze
code-clean
design-review
perf
cso
a11y
doc
context7
ui-ux-pro-max
gstack
optional
yes
no
Mobile Flutter
Application Flutter (Dart) cible iOS + Android + Web + Desktop. Widgets tree, state management variable (Provider / Riverpod / Bloc / GetX).
Detection signals
Strong signals (× 3)
FILE: pubspec.yaml
FILE: pubspec.lock
DIR: lib/ AVEC fichiers .dart
FILE: lib/main.dart
Medium signals (× 2)
DIR: android/
DIR: ios/
FILE: analysis_options.yaml
DIR: test/ AVEC .dart
DEP dans pubspec.yaml: "flutter_bloc", "provider", "riverpod", "get"
Weak signals (× 1)
DIR: web/, macos/, linux/, windows/ (multi-plateforme)
FILE: l10n.yaml (i18n)
DIR: assets/images/, assets/fonts/
FILE: .flutter-plugins, .flutter-plugins-dependencies
Counter-signals (exclusion)
DEP pubspec contient "dart_sdk" uniquement sans "flutter" → projet Dart pur (CLI / server), pas Flutter
Implications
Distribution : App Store / Play Store / AppGallery (Huawei) / Web (Flutter Web) / Desktop (macOS/Win/Linux via Flutter desktop)
Base de données : locale (sqflite / Hive / Isar / Drift) + backend (Firebase / Supabase / API custom)
SEO/GEO : PARTIEL si Flutter Web — Flutter Web rend en canvas/HTML, SEO limité même en HTML renderer
Surface sécurité : GRANDE — shared_preferences non chiffré, secrets dans bundle, deep links
UI/UX : CRITIQUE — design system Material/Cupertino + custom
Typical pain points
Secrets / API keys dans pubspec.yaml ou lib/config.dart committés
shared_preferences pour tokens → pas chiffré (doit être flutter_secure_storage)
State management non cohérent (mélange setState + Provider + Bloc dans même app)
Rebuild excessif (pas de const widgets, pas de Selector, pas de keys)
Performances listes : pas de ListView.builder (rend tout d'un coup)
Images non optimisées (pas de cached_network_image, pas de compression)
Pas de splash screen natif (flash blanc au démarrage)
Permissions iOS/Android demandées sans justification → reject App Store
Pas de crash reporting (Sentry / Firebase Crashlytics absents)
Deep links non configurés / uni_links / go_router mal configurés
Pas de tests unitaires / widget tests
Pas de tests E2E (integration_test / Patrol / Maestro)
Flutter SDK obsolète (cycle release rapide)
flutter pub outdated ignoré → deps avec failles
Accessibilité : Semantics widget pas utilisé, focus order incorrect
Dark mode : ThemeMode.system pas supporté ou mal
i18n : strings hardcodées au lieu de .arb files
Platform channels pas testés (plugins natifs)
Code generation (build_runner) pas dans CI → fichiers générés commités
App bundle size énorme (pas de --split-per-abi Android, pas de tree shaking)
Interview questions (adaptive)
En plus du set minimum business :
State management : Provider / Riverpod / Bloc / GetX / Cubit / vanilla ?
Flutter SDK / Dart version ?
Targets : iOS / Android / Web / macOS / Windows / Linux ?
Navigation : Navigator 1.0 / go_router / auto_route / beamer ?
Backend : Firebase / Supabase / API custom / GraphQL ?
Auth : provider + storage (flutter_secure_storage obligatoire pour tokens) ?
Database locale : sqflite / Hive / Isar / Drift / SharedPreferences ?
Push notifications : FCM / OneSignal / Notifee / aucun ?
Crash reporting : Firebase Crashlytics / Sentry / aucun ?
Analytics : Firebase / Amplitude / PostHog / aucun ?
Tests : unit / widget / integration / Patrol ?
CI/CD : Codemagic / Bitrise / GitHub Actions / Fastlane / aucun ?
Code generation : build_runner / freezed / json_serializable / riverpod_generator ?
i18n : flutter_localizations + .arb ?
Design system : Material 3 / Cupertino / custom tokens ?
Dark mode supporté ?
Accessibilité : Semantics widgets + testé VoiceOver / TalkBack ?
App bundle size cible ?
App Store Review : première soumission / rejet déjà eu / actif ?
Plugin recommendations
context7 : OPTIONAL — ON pour Flutter 3.x récent (Impeller, Material 3, Riverpod 2+)
ui-ux-pro-max : ON
gstack : OFF
Example project layout