RideFlow Expo 57 + Firebase

Google APIs Firebase React Native FCM

Passageiro / Cliente

solicitar viagem
badge

Cadastro & Login

Firebase Auth
Email/Senha ou Google/Apple Firestore: passageiros/{uid}
verificação SMS perfil: nome, telefone
trip_origin

Solicitação

Google Places + Maps
origem/destino com autocomplete   Google Places API entrega / viagem
pagamento: Stripe / Mercado Pago   Firestore: formasPagamento
solicitacoes/ {status: aguardando} geohash (geofirestore)
near_me

Acompanhamento em tempo real

onSnapshot + FCM
notificações push (FCM + expo-notifications) motorista aceitou, chegou, finalizou
mapa com posição do motorista via Firestore   @react-native-google-maps
info motorista (foto, placa) botão de emergência
star

Finalização & Avaliação

Cloud Functions
avaliar motorista   viagens/{id} / avaliacaoPassageiro
histórico completo de viagens

Motorista / Entregador

receber notificações
assignment_ind

Cadastro + Documentos

Storage + Auth
CNH, CRLV, foto veículo   firebase/storage
verificação admin / Cloud Function veiculo: modelo, placa, cor
coleção motoristas com status: offline/online/em_viagem
wifi_tethering

Online/Offline & escuta

Firestore + geohash
botão para alternar status   updateDoc({ status: "online" })
escuta solicitacoes com geohash (motoristas próximos)
localização em tempo real (expo-location)
notifications_active

Notificação push & Aceite

FCM + Cloud Functions
push com origem, destino, valor estimado   modal aceitar/recusar
ao aceitar: atualiza viagens e motorista → em_viagem
Cloud Function: notificarMotoristasProximos
navigation

Navegação & Suporte

Google Directions + Maps
Google Directions API (rota otimizada) Distance Matrix (preço)
botão de emergência com localização (Twilio + Cloud Function)
histórico de ganhos viagens finalizadas

Desempenho & Recursos

  • geofirestore – consulta otimizada por proximidade
  • índices compostos no Firestore para consultas rápidas
  • compressão de imagens (Storage) para documentos
  • expo-updates para OTA e carregamento rápido
  • Cloud Functions com cache de preços (Distance Matrix)

Segurança & Privacidade

  • Regras do Firestore baseadas em UID (motorista/passageiro)
  • verificação de documentos com Cloud Function + admin
  • variáveis de ambiente com expo-constants (API keys)
  • botão de emergência com compartilhamento de localização
  • logs de auditoria para ações críticas

Gestão & Administração

  • painel web (Firebase Hosting) para admin
  • aprovação manual de documentos motorista
  • gestão de pagamentos e repasses (Stripe Connect)
  • relatórios de viagens, ganhos e avaliações
  • notificações administrativas via FCM para todos