Como Funciona
GitScrum Studio para Android é um app nativo construído com React Native e Expo. Ele se conecta à mesma API do GitScrum usada pela aplicação web e extensão do VS Code, garantindo que todas as plataformas permaneçam perfeitamente sincronizadas.
Arquitetura de Navegação
O app usa um layout baseado em abas com um menu lateral para ações secundárias.
Abas Inferiores
Duas abas ficam sempre visíveis na parte inferior da tela:
| Aba | O Que Mostra |
|---|---|
| Home | Lista de projetos do workspace atual |
| Controle de Tempo | Info do timer ativo, resumo do dia e tarefas futuras |
Telas adicionais (Tarefas, Detalhe do Projeto) são acessadas tocando em itens nas listas — elas empilham na navegação a partir das abas.
Menu Lateral
Deslize da borda esquerda ou toque no ícone de menu para abrir o menu lateral. Ele contém:
Ações Rápidas:
- Criar Workspace
- Criar Projeto
- Criar Tarefa
Ferramentas:
- Notificações
- NoteVault
Preferências:
- Seletor de Tema
- Seletor de Idioma
- Seletor de Fuso Horário
- Perfil
- Seletor de Workspace
Fluxo de Dados
Autenticação
Quando você faz login (via email, GitHub, Google ou Facebook), o app armazena seu token de autenticação de forma segura usando AsyncStorage. O token persiste entre sessões — você permanece conectado até fazer logout explicitamente.
Conexão com a API
Cada tela busca dados da API do GitScrum. Projetos, tarefas, entradas de tempo, notas e notificações vêm dos mesmos endpoints usados pela aplicação web. As alterações feitas no mobile ficam imediatamente visíveis nas outras plataformas.
Sincronização em Tempo Real
O app mantém uma conexão WebSocket via Laravel Reverb (protocolo Pusher). Isso permite atualizações ao vivo sem atualização manual:
- Eventos de workspace: Criação e exclusão de projetos aparecem instantaneamente na tela inicial
- Eventos de tarefas: Movimentações, atualizações, criações e exclusões sincronizam entre todas as sessões abertas
- Eventos de timer: Início, parada e entradas de tempo são transmitidos para todos os clientes conectados
- Notificações: Novas notificações chegam em tempo real
Puxar para Atualizar
Toda tela de lista suporta puxar para atualizar para recarregar dados manualmente. Puxe para baixo no topo de qualquer lista para forçar uma nova busca.
Scroll Infinito
Listas longas (projetos, tarefas, notas, notificações) usam paginação com scroll infinito. Conforme você rola para baixo, páginas adicionais carregam automaticamente.
Arquitetura de Telas
O app segue uma separação limpa:
- Arquivos de rota em
app/definem a estrutura de navegação - Componentes de tela em
src/components/screens/contêm a lógica de UI - Modais em
src/components/modals/gerenciam overlays (parar timer, seletor de workflow, seletor de membros) - Serviços em
src/services/gerenciam toda a comunicação com a API - Hooks fornecem estado compartilhado (autenticação, tema, traduções, dados do workspace)
Sistema de Temas
O app inclui 54 temas organizados em 23 grupos. Cada tema define 28 tokens de cor cobrindo fundos, superfícies, texto, destaques e cores semânticas (sucesso, aviso, erro).
O sistema de temas suporta tanto temas escuros quanto claros. Um badge em cada tema no seletor indica se é uma variante escura ou clara.
Temas se aplicam globalmente e instantaneamente — trocar de tema atualiza todas as telas imediatamente sem necessidade de reiniciar.
Sistema de Idiomas
O app suporta quatro idiomas: English, Português, Español e Français. A detecção de idioma é automática no primeiro uso (baseada no idioma do dispositivo) com inglês como padrão.
Você pode alterar o idioma a qualquer momento pelo menu lateral. A preferência é salva localmente e sincronizada com sua conta GitScrum.
Atualização Automática
Os painéis atualizam automaticamente via conexão WebSocket. Quando o app recebe um evento em tempo real, a tela relevante atualiza sem qualquer ação do usuário. Para atualização manual, use puxar para atualizar em qualquer lista.
Dicas Avançadas (Quando Estiver Confortável)
- Acesso rápido a projetos: A aba Home mostra projetos do seu workspace atual. Alterne workspaces pelo menu lateral para acessar diferentes conjuntos de projetos instantaneamente.
- Consciência do timer: A aba Controle de Tempo sempre mostra seu timer ativo. Use-a como verificação rápida para ver no que você está trabalhando.
- Atalhos do menu lateral: O atalho Criar Tarefa do menu lateral permite capturar tarefas rapidamente sem navegar para um projeto específico primeiro.
Permissões
O app respeita as permissões da sua conta GitScrum:
- Donos de Agência e Gerentes: Acesso completo a todas as funcionalidades, configurações de projeto e dados da equipe
- Desenvolvedores: Podem gerenciar tarefas, registrar tempo e usar ferramentas de colaboração
- Clientes: Acesso somente leitura (se tiverem acesso ao projeto concedido)
Se uma funcionalidade aparecer desabilitada ou uma tela mostrar dados limitados, verifique seu papel no projeto na aplicação web GitScrum.
Como Reportar um Problema ou Solicitar uma Funcionalidade
Se o app apresentar comportamento inesperado ou você tiver sugestões de melhorias, envie feedback pelo GitScrum Studio.
Na barra lateral da aplicação web, clique em Tickets de Suporte e abra um ticket descrevendo sua experiência.