Next Session : une organisation qui se gère toute seule.
Notre propre produit, conçu et développé de bout en bout. Une application multiplateforme, un backend sans serveur et un planificateur automatique qui propose la prochaine soirée jeu dès que la précédente est terminée. Publié et disponible sur Google Play et sur le web.
Le problème
Tout le monde veut jouer. Personne ne fixe de date.
Les groupes de jeu réguliers perdent plus de soirées à trouver une date qu'à quoi que ce soit d'autre. La date vit dans une conversation de groupe, le sondage s'essouffle, une personne finit par courir après cinq autres, et la campagne s'arrête sans bruit.
Ce que nous avons fait
Nous avons confié la relance à l'application.
Une session est proposée, chacun vote selon ses disponibilités, et la date se verrouille dès qu'il y a assez de joueurs. Ensuite, le planificateur propose la suivante tout seul. La personne qui organise cesse d'être le goulot d'étranglement, et le groupe garde son créneau.
Ce que nous avons construit
Trois systèmes qui font le travail.
Le produit est simple en surface et piloté par les événements en dessous. Chaque écran ci-dessous vient de l'application publiée.
Proposer, voter, confirmer.
Un membre propose une session avec des dates possibles. Chacun vote pour ou contre. Dès que les acceptations atteignent le seuil du groupe, la session se confirme d'elle-même à la date gagnante. Quand le seuil devient mathématiquement hors d'atteinte, elle se refuse d'elle-même au lieu de rester bloquée, et c'est ce même signal qui déclenche la proposition suivante.
Huit états de session, chacun avec sa couleur et son libellé, gardent toute la table au clair sur ce qui attend son attention.
Un planificateur qui n'a jamais à balayer.
Activez-le, choisissez une heure, et la session suivante se propose d'elle-même à l'instant où la session en cours se résout. Pas de tâche planifiée qui parcourt tout, pas de file d'attente de sessions futures : il n'y a jamais qu'une seule session en cours, et c'est sa résolution qui génère la suivante.
Si les propositions sont refusées à répétition, il se met en pause et prévient un administrateur au lieu de spammer le groupe. Les règles de récurrence payantes tournent sur le même moteur, avec fréquence, conditions de fin et politique de conflit.
Des disponibilités que le planificateur sait lire.
Chaque joueur tient son propre calendrier : des motifs hebdomadaires récurrents et des exceptions ponctuelles. L'application agrège la table en un statut de groupe par jour, pour que la personne qui propose choisisse une date qui fonctionne déjà au lieu de deviner.
Ce sont ces mêmes données que le planificateur automatique parcourt pour trouver la prochaine soirée possible.
Notifications push et dans l’application
Sept types de notifications avec des interrupteurs indépendants pour le push et l'application, des boutons de réponse directement sur la notification, et un délai de rappel propre à chaque personne avant le début d'une session.
Groupes, rôles, liens d’invitation
Des droits d'administration, d'organisation et de membre, avec des jetons d'invitation rotatifs pour invalider un lien partagé sans toucher au groupe.
Abonnements et publicité
Une offre gratuite financée par la publicité et un accès premium Next Session+, présenté au moment du clic plutôt que caché.
Sessions sur place et en ligne
Autocomplétion d'adresse pour les tables qui se réunissent en personne, plateforme et lien de connexion pour celles qui jouent en ligne, les deux accessibles depuis la session.
Huit langues, trois thèmes
Anglais, néerlandais, allemand, français, espagnol, italien, polonais et portugais partout, y compris pour les notifications envoyées par le serveur, avec un thème clair, sombre et système.
Le mouvement comme finition
Une animation de lancement sur mesure, des transitions en révélation circulaire, des états de chargement en squelette et des confettis à la confirmation, le tout dans le respect du réglage de mouvement réduit.
Notre façon de travailler
Comment ce projet s'est déroulé.
Cadrer et planifier
Nous avons écrit le produit avant d'écrire le code : les rôles, le cycle de vie d'une session, la matrice des notifications et la règle qu'une seule session est en cours à la fois. Cette décision a supprimé toute une catégorie de cas limites par la suite.
Construire et ajuster
Une seule base de code Flutter pour Android et le web, des données en temps réel dès le premier jour, et des cloud functions écrites en même temps que les écrans qui les déclenchent. Les traductions et le thème sombre sont arrivés tôt, pas après coup.
Publier et maintenir
Fiche du store, confidentialité et conditions, consentement, analytics et un site marketing sur le même hébergement. L'application est en ligne et l'infrastructure est la nôtre à maintenir en bonne santé.
Sous le capot
La stack qui fait tourner tout ça.
Choisie pour qu'une seule équipe puisse porter l'application, le backend et le déploiement sans rien déléguer.
- Flutter, Material 3
- État avec Riverpod
- Navigation go_router
- Android, web, prêt pour iOS
- Firebase Auth
- Cloud Firestore
- Cloud Functions
- Cloud Storage, App Check
- Push Cloud Messaging
- Abonnements RevenueCat
- Google AdMob
- Autocomplétion Google Places
- Site statique Astro
- Firebase Hosting
- Publication Google Play
- Push via service worker
Un projet logiciel en tête ?
Dites-nous ce que vous construisez et nous vous dirons honnêtement comment nous pouvons aider.