Comment ça fonctionne
GitScrum Studio pour Android est une application native construite avec React Native et Expo. Elle se connecte à la même API GitScrum utilisée par l'application web et l'extension VS Code, garantissant que toutes les plateformes restent parfaitement synchronisées.
Architecture de navigation
L'application utilise une disposition à onglets avec un tiroir pour les actions secondaires.
Onglets inférieurs
Deux onglets sont toujours visibles en bas de l'écran :
| Onglet | Ce qu'il affiche |
|---|---|
| Accueil | Liste des projets de l'espace de travail actuel |
| Suivi du temps | Informations du minuteur actif, résumé du jour et tâches à venir |
Des écrans supplémentaires (Tâches, Détail du projet) sont accessibles en appuyant sur les éléments des listes — ils se superposent sur la pile de navigation depuis les onglets.
Menu tiroir
Glissez depuis le bord gauche ou appuyez sur l'icône de menu pour ouvrir le tiroir. Il contient :
Actions rapides :
- Créer un espace de travail
- Créer un projet
- Créer une tâche
Outils :
- Notifications
- NoteVault
Préférences :
- Sélecteur de thème
- Sélecteur de langue
- Sélecteur de fuseau horaire
- Profil
- Sélecteur d'espace de travail
Flux de données
Authentification
Lorsque vous vous connectez (via e-mail, GitHub, Google ou Facebook), l'application stocke votre jeton d'authentification de manière sécurisée avec AsyncStorage. Le jeton persiste entre les sessions — vous restez connecté jusqu'à ce que vous vous déconnectiez explicitement.
Connexion API
Chaque écran récupère les données depuis l'API GitScrum. Les projets, tâches, entrées de temps, notes et notifications proviennent tous des mêmes points de terminaison utilisés par l'application web. Les changements effectués sur mobile sont immédiatement visibles sur les autres plateformes.
Synchronisation en temps réel
L'application maintient une connexion WebSocket via Laravel Reverb (protocole Pusher). Cela permet des mises à jour en direct sans actualisation manuelle :
- Événements d'espace de travail : La création et la suppression de projets apparaissent instantanément sur l'écran d'accueil
- Événements de tâche : Les mouvements, mises à jour, créations et suppressions de tâches se synchronisent entre toutes les sessions ouvertes
- Événements de minuteur : Les démarrages, arrêts et entrées de temps sont diffusés à tous les clients connectés
- Notifications : Les nouvelles notifications arrivent en temps réel
Tirer pour actualiser
Chaque écran de liste prend en charge le tirer-pour-actualiser pour un rechargement manuel des données. Tirez vers le bas depuis le haut de n'importe quelle liste pour forcer une nouvelle récupération.
Défilement infini
Les longues listes (projets, tâches, notes, notifications) utilisent la pagination avec défilement infini. Au fur et à mesure que vous faites défiler vers le bas, les pages supplémentaires se chargent automatiquement.
Architecture des écrans
L'application suit une séparation propre :
- Fichiers de route dans
app/définissent la structure de navigation - Composants d'écran dans
src/components/screens/contiennent la logique d'interface - Modales dans
src/components/modals/gèrent les superpositions (arrêt du minuteur, sélecteur de flux de travail, sélecteur de membre) - Services dans
src/services/gèrent toute la communication API - Hooks fournissent l'état partagé (authentification, thème, traductions, données d'espace de travail)
Système de thèmes
L'application comprend 54 thèmes organisés en 23 groupes. Chaque thème définit 28 jetons de couleur couvrant les arrière-plans, surfaces, textes, accents et couleurs sémantiques (succès, avertissement, erreur).
Le système de thèmes prend en charge les thèmes sombres et clairs. Un badge sur chaque thème dans le sélecteur indique s'il s'agit d'une variante sombre ou claire.
Les thèmes s'appliquent globalement et instantanément — changer de thème met à jour chaque écran immédiatement sans redémarrage.
Système de langues
L'application prend en charge quatre langues : English, Português, Español et Français. La détection de la langue est automatique au premier lancement (basée sur la langue de votre appareil) avec l'anglais comme langue par défaut.
Vous pouvez changer la langue à tout moment depuis le tiroir. La préférence est enregistrée localement et synchronisée avec votre compte GitScrum.
Actualisation automatique
Les panneaux s'actualisent automatiquement via la connexion WebSocket. Lorsque l'application reçoit un événement en temps réel, l'écran concerné se met à jour sans aucune action de l'utilisateur. Pour une actualisation manuelle, utilisez le tirer-pour-actualiser sur n'importe quelle liste.
Astuces (une fois à l'aise)
- Accès rapide aux projets : L'onglet Accueil affiche les projets de votre espace de travail actuel. Changez d'espace de travail depuis le tiroir pour accéder instantanément à différents ensembles de projets.
- Conscience du minuteur : L'onglet Suivi du temps affiche toujours votre minuteur actif. Utilisez-le comme vérification rapide pour voir sur quoi vous travaillez.
- Raccourcis du tiroir : Le raccourci Créer une tâche du tiroir vous permet de capturer des tâches rapidement sans naviguer vers un projet spécifique au préalable.
Permissions
L'application respecte les permissions de votre compte GitScrum :
- Propriétaires d'agence et Managers : Accès complet à toutes les fonctionnalités, paramètres de projet et données d'équipe
- Développeurs : Peuvent gérer les tâches, enregistrer le temps et utiliser les outils de collaboration
- Clients : Accès en lecture seule (si l'accès au projet est accordé)
Si une fonctionnalité semble désactivée ou si un écran affiche des données limitées, vérifiez votre rôle dans le projet depuis l'application web GitScrum.
Comment signaler un problème ou demander une fonctionnalité
Si l'application se comporte de manière inattendue ou si vous avez des suggestions d'amélioration, soumettez vos retours via GitScrum Studio.
Dans la barre latérale de l'application web, cliquez sur Tickets de support et ouvrez un ticket décrivant votre expérience.