Diagrama de Deploy – Projeto Ludo-pets
O fluxo de deploy do projeto Ludo-pets é gerenciado a partir de um repositório hospedado no GitLab, que centraliza o código-fonte e as configurações necessárias para o build automatizado do aplicativo nas versões Mobile (APK/IPA) e Web (PWA).
Deploy Mobile (APK/IPA)
O GitLab executa o processo de build utilizando o EAS Build.
O aplicativo gerado (APK/IPA) é enviado automaticamente para o Firebase App Distribution.
Um link de instalação é disponibilizado ao Stakeholder, que instala o app diretamente em seu dispositivo móvel.
O Stakeholder, acessando o app diretamente pelo navegador, também interage com os serviços do Firebase, da mesma forma que a versão mobile.
Comunicação com o Firebase Após a instalação, o app se comunica diretamente via internet com o Firebase.
Deploy Web (PWA)
O GitLab também executa o comando expo export para gerar o build da versão web do app.
O conteúdo gerado é hospedado na plataforma Vercel.
O Stakeholder, acessando o app diretamente pelo navegador, também interage com os serviços do Firebase, da mesma forma que a versão mobile.
Comunicação com o Firebase
Tanto o app instalado em dispositivos móveis quanto o PWA acessado via navegador comunicam-se diretamente com o Firebase. Essa integração garante autenticação de usuários, execução de funções em nuvem e persistência de dados em tempo real via Firestore.
Frontend:
O sistema será acessado por dispositivos móveis, por meio de um aplicativo desenvolvido em React Native com suporte do Expo, que facilita o processo de desenvolvimento, testes e distribuição. A aplicação utiliza TypeScript para garantir maior segurança e organização do código, além de seguir o modelo de componentização, permitindo interfaces modulares e reutilizáveis.
A interface é enriquecida com a biblioteca Phosphor Icons, que oferece ícones modernos e personalizáveis, contribuindo para uma experiência visual mais agradável e intuitiva.
Tecnologias:
Backend:
O backend da aplicação Ludo Pets é estruturado sobre a plataforma Firebase, que centraliza os principais serviços necessários para o funcionamento do app, como autenticação de usuários, persistência de dados em tempo real via Firestore e execução de funções em nuvem por meio do Cloud Functions. Todo o código-fonte do projeto é mantido em um repositório no GitLab, que também gerencia o fluxo de deploy tanto para a versão mobile (APK/IPA) quanto para a versão web (PWA)
- Autenticação de usuários (Firebase Auth)
- Execução de funções em nuvem (Cloud Functions)
- GitLab CI/CD
Tecnologias:
Banco de Dados:
Optamos por utilizar na nossa aplicação o Cloud Firestore. É um banco de dados NoSQL, criado pelo Google e oferecido dentro da plataforma Firebase. Ele foi projetado para armazenar, sincronizar e consultar dados estruturados de forma eficiente, especialmente para aplicações web e mobile.