flutter-dev
Créer des applications Flutter multiplateformes
La création d'applications multiplateformes de haute qualité nécessite la maîtrise de nombreux patterns Flutter et approches de gestion d'état. Cette skill fournit des conseils structurés sur les patterns de widgets, la gestion d'état avec Riverpod et Bloc, la navigation avec GoRouter, l'optimisation des performances et les implémentations spécifiques à chaque plateforme.
Télécharger le ZIP du skill
Importer dans Claude
Allez dans Paramètres → Capacités → Skills → Importer un skill
Activez et commencez à utiliser
Tester
Utilisation de "flutter-dev". Montrez-moi comment configurer GoRouter avec des guards d'authentification
Résultat attendu:
- Configurer GoRouter avec une fonction redirect qui vérifie l'état d'authentification
- Définir les chemins des routes pour les écrans de connexion, d'accueil et protégés
- Implémenter une redirection qui envoie les utilisateurs non authentifiés vers la page de connexion
- Préserver l'état de navigation lors des redirections d'authentification
Utilisation de "flutter-dev". Comment tester un widget Flutter basé sur Bloc?
Résultat attendu:
- Écrire des tests de widgets en utilisant pumpWidget avec un wrapper ProviderScope
- Utiliser Mocktail pour mocker les dépendances du repository
- Déclencher des interactions utilisateur avec les méthodes find et tap
- Vérifier les changements d'état UI attendus avec des assertions expect
Audit de sécurité
SûrThis skill consists entirely of markdown documentation files (SKILL.md and 12 reference files) containing Dart/Flutter code examples and development best practices. The static analyzer flagged 583 patterns, but all are false positives caused by misinterpreting markdown code fence backticks as shell commands and treating documentation content as executable code. No actual scripts, network calls, filesystem operations, or external commands are present. The skill is safe to publish.
Score de qualité
Ce que vous pouvez construire
Architecture de démarrage d'application mobile
Configurer un nouveau projet Flutter avec une structure basée sur les fonctionnalités, la navigation GoRouter et la gestion d'état Riverpod dès le départ.
Migration de gestion d'état
Migrer une application Flutter existante de setState vers Riverpod ou Bloc pour une meilleure organisation de l'état et une meilleure testabilité.
Audit d'optimisation des performances
Identifier et corriger les goulots d'étranglement de performance en utilisant le profilage DevTools, l'optimisation const et les patterns RepaintBoundary.
Essayez ces prompts
Aidez-moi à configurer un nouveau projet Flutter avec une structure de dossiers basée sur les fonctionnalités. Incluez GoRouter pour la navigation et Riverpod pour la gestion d'état. Montrez le point d'entrée principal et un dossier de fonctionnalité basique.
Montrez-moi comment implémenter un flux d'authentification utilisateur avec Riverpod. Incluez un StateNotifierProvider pour l'état d'authentification, un formulaire de connexion avec validation et la navigation vers un écran d'accueil en cas de succès.
Examinez cet arbre de widgets Flutter et identifiez les problèmes de performance. Suggérez où utiliser les constructeurs const, RepaintBoundary et ListView.builder. Expliquez l'impact de chaque optimisation.
Créez une configuration de client HTTP Dio avec des intercepteurs d'authentification, la gestion des erreurs et la logique de nouvelle tentative. Incluez un pattern repository pour les appels API et montrez comment l'intégrer avec les providers Riverpod.
Bonnes pratiques
- Utiliser des constructeurs const sur tous les widgets statiques pour éviter les reconstructions inutiles et réduire l'utilisation de la mémoire
- Choisir Riverpod pour la gestion d'état simple et l'injection de dépendances avec moins de boilerplate, et Bloc pour les flux d'état complexes pilotés par les événements
- Profiler avec Flutter DevTools en mode profile avant d'optimiser pour identifier les véritables goulots d'étranglement de performance
Éviter
- Éviter d'utiliser setState pour l'état partagé dont dépendent plusieurs widgets. Utiliser une solution de gestion d'état à la place
- Ne pas placer les appels API ou les calculs lourds dans les méthodes build. Utiliser des providers ou des isolates pour le travail asynchrone
- Ne jamais sauter les constructeurs const sur les widgets statiques. Un const manquant empêche Flutter de sauter les sous-arbres de widgets inchangés