Qu’est-ce qu’un package ?
Un package est une méthode, ou un bout de code prêt à l’utilisation, que vous allez pouvoir importer et utiliser pour votre application. Utiliser ces outils présente un énorme avantage, surtout lorsqu’on débute. En effet, ils permettent de grandement nous simplifier la mise en place de certaines fonctions où éléments visuels, qui sont parfois complexes à coder ou qui demandent beaucoup de temps.
Par exemple, il existe des packages Flutter pour :
- Connecter son application à des services tiers comme Firebase ;
- Facilement ajouter des animations de chargement ;
- Ajouter de nouvelles typographies pour ses textes ou de nouveaux icônes ;
- Ouvrir des urls dans une nouvelle fenêtre ou appeler des numéros de téléphones ;
- Zoomer sur une photo lorsque l’utilisateur “pincer” l’écran, ou la faire pivoter quand il tourne son écran, etc.
Comment installer un package dans Flutter ?
Pour installer un package, rendez-vous sur le site Pub.dev ou ceux-ci sont tous regroupés. Cherchez le package qui vous intéresse et rendez-vous la section “installing”. Vous avez alors deux options d’installation proposées :
- Utiliser le terminal de commande et entrer flutter pub add nom_du_package ;
- Aller dans votre dossier pubspec.yaml (tout en bas de vos dossiers quand vous ouvrez visual studio) et coller la dépendance avec la version que vous souhaitez installer, dans les dépendances juste en dessous de la ligne cupertino_icons: ^1.0.2
Le package va alors être importé dans vos dossiers et vous allez pouvoir l’utiliser pour application.
Utiliser un package
Vous avez importé un package, mais cela n’est pas encore suffisant pour pouvoir l’utiliser. En effet, afin de pouvoir l’utiliser sur une page en particulier, il va falloir encore l’importer sur celle-ci. Heureusement, c’est très simple, il vous suffit pour cela de coller le chemin d’import qui est indiqué dans la partie “installing” du package et qui ressemble à ça :
import ‘package:mon_package/mon_package.dart’;
Ça y est ! Vous êtes prêt à utiliser votre package
Les différents types de packages
Il n’y a pas à proprement parler des types de packages, mais de mon expérience, on peut les diviser en 3 catégories :
- Visuels, pour ajouter des éléments visuels à votre application, comme des typos, des icônes, des animations, etc ;
- Fonctionnels, qui vous permettent de réaliser des actions, comme ouvrir une url, afficher un message d’erreur qui disparait après un temps donné, etc ;
- De services tiers, qui permettent de se connecter et d’utiliser les fonctionnalités de services tiers comme Firebase, votre compte Google, votre compte Apple, etc.
Packages visuels
Voici une liste de quelques packages visuels qui pourraient vous être utiles :
- google_Font (pour importer des typos) ;
- caroussel_Slider (pour créer des carrousels de photos) ;
- fluttertoast (pour afficher des messages d’alerte, qui disparaissent ensuite) ;
- lottie (pour ajouter des animations de type gif) ;
- auto_size_text (pour adapter la taille de vos textes selon la taille de l’écran) ;
- flutter_launch_icons (pour changer l’icône de lancement de votre application) ;
- les packages d’icons (Ionicons, Feather, Unicons, etc).
Packages fonctionnels
Voici une liste de quelques packages visuels qui pourraient vous être utiles :
- url_launcher (pour ouvrir des urls dans Google chrome, des numéros de téléphone, etc) ;
- Image_picker (pour accéder aux images du téléphone et à la caméra) ;
- video_player (pour pouvoir lancer des vidéos depuis votre application) ;
- geocoding (pour se géolocaliser) ;
- audioplayers (pour jouer plusieurs fichiers audios en même temps) ;
Packages de services externes
Voici une liste de quelques packages visuels qui pourraient vous être utiles :
- firebase Core (pour connecter votre application à Firebase et profiter de ses services) ;
- firebase auth (pour accéder à l’outil Firebase Authentification dans lequel vous pourrez stocker les comptes de vos utilisateurs) ;
- cloud_firestore (pour pouvoir écrire des fonctions en back-end) ;
- google_sign_in (pour pouvoir se connecter à votre application avec son compte Google) ;
- sign_in_with_apple (pour pouvoir se connecter à votre application avec son compte Apple) ;
Mes packages Flutter favoris
Voici la liste de package Flutter que j’ai pu personnellement utiliser et que je peux vous recommander :

Identifier une langue avec google_mlkit_language_id

Changer le nom ou le bundle ID de son application Flutter

Donnez une voix à vos textes avec le package flutter_tts

Effet de transparence floutée avec le package glossy

Ouvrir des URL avec le package Url Launcher

Ajouter des animations avec le package lottie de Flutter

Les packages d’icônes Flutter les plus utilisés

Google Fonts dans Flutter : Définir une typographie pour vos textes

Adapter la taille d’un texte avec le package auto size text
