La première application Flutter que j’ai développé a été publiée pour tests auprès d’une trentaine de personnes. L’application permet aux utilisateurs de consulter les évènements locaux afin qu’ils puissent réserver des places.
D’un point de vue technique, elle est tourne sous Firebase (Authentication, Cloud Firestore).
Afin que le propriétaire de l’application puisse gérer les données, je souhaite développer un back-office simple mais efficace, plutôt que de devoir créer les évènements directement dans la console Firebase…
J’ai regardé un peu les solutions sur lesquelles je pourrais partir (NodeJS, projet Flutter Web…) mais j’hésite.
Je voulais donc vous demander quelles solutions vous utilisiez? Je sais que certains d’entre vous utilisent également Firebase. Qu’avez-vous choisi pour l’administration et le back-office?
Pourquoi ne pas ajouter le mode édition dans la même app ? Ce sont juste des écrans supplémentaires.
Ensuite tu peux le garder en mode mobile uniquement ou publier une version web de ton app Flutter si tu veux permettre aux utilisateur de gérer leurs événements depuis un navigateur
Merci Maxime pour ta réponse.
C’est sûr que de tout faire dans le même projet Flutter me paraît plus simple et m’arrangerait.
Est-il possible de publier uniquement certains écrans du projet pour le web? Par exemple, je voudrais publier uniquement une page de connexion afin que les administrateurs de l’application s’identifient, et une autre page afin qu’ils gèrent les évènements. Pas besoin de publier le reste, on veut que ça reste sur mobile.
Le sujet m’intéresse énormément, je me demandais moi aussi si il était possible de sélectionner les écrans qui s’affichent pour une certaine plateforme.
Dans ce cas, fait une gestion de droit je pense. Créer un rôle utilisateur et un rôle administrateur. Les personnes. En suite t’as juste à préciser dans ton code, si c’est un utilisateur tu affiche ou non tel ou tel page
Logiquement il n’existe pas de cas ou vous afficher un écran et pas un autre si vous êtes sur téléphone, tablet ou ordinateur. Tout ce qui peut changer en fonction du device (mobile, tablet ou pc), c’est le visuel ( des grids, des listes, des positions de card etc…)
En programmation presque tout est possible, c’est seulement parfois plus compliqué que d’autres.
Flutter permet de détecter la plateforme sur laquelle l’application tourne :
kIsWeb permet de détecter si l’application est compilé pour le WEB.
Platform qui est présente dans dart:io permet de détecter l’OS.
Platform ne fait pas de différence entre le Web ou les applications natives, ainsi en combinant kIsWeb + Platform tu peux détecter une application Web ouverte sous Android par exemple.
Après tu utilise ça comme tu veux dans ton application, si tu veux afficher une page sous Android et pas sous IOS tu peux.
Exemple :
String welcomeMessage() {
String message = "Salut";
message += switch (Platform.operatingSystem) {
"android" => " petit robot vert",
"ios" => " croqueur de pommes",
_ => " visiteur"
};
if (kIsWeb) message += " de la toile";
return "$message !";
}