Publicado em

Projeto: Panvel App

Autores
Panvel App

Introdução

O projeto farmácias Panvel foi um marco muito importante para minha carreira como desenvolvedor mobile, pois foi o primeiro grande e-commerce do qual participei do desenvolvimento.

O Projeto

O objetivo principal era criar um aplicativo de compras intuitivo e eficiente para os clientes da Panvel. O aplicativo deveria exibir categorias, subcategorias, listagem de produtos e permitir que os usuários adicionassem itens ao carrinho. Além disso, a aplicação deveria suportar a aplicação de cupons de desconto e permitir a modificação dinâmica de funcionalidades por meio do Firebase Remote Config.

Tecnologias Utilizadas

  1. React Native: Optamos por usar o React Native para desenvolver o aplicativo móvel. Essa escolha nos permitiu criar uma experiência consistente em dispositivos iOS e Android.
  2. Node.js e ExpressJS: O BFF foi escrito em Node.js, aproveitando o poder do ExpressJS para criar rotas e gerenciar as requisições do aplicativo.
  3. Firebase Remote Config: Essa ferramenta nos permitiu modificar configurações do aplicativo remotamente, sem a necessidade de atualizações na loja de aplicativos.

Desenvolvimento do Aplicativo

Arquitetura

O aplicativo foi dividido em componentes reutilizáveis, como Categorias, Produtos e Carrinho de Compras. Usamos o Redux para gerenciar o estado global e garantir uma experiência fluida para o usuário. Como a equipe de designers da Panvel era bastante exigente com relação às animações, utilizamos a biblioteca Lottie para adicionar animações de alta qualidade ao aplicativo.

Integração com o BFF

O BFF foi projetado para ser uma camada intermediária entre o aplicativo e os serviços back-end. Ele se comunicava com APIs RESTful fornecidas pelos serviços da Panvel, como o catálogo de produtos e os cupons de desconto.

Firebase Remote Config

O Firebase Remote Config nos permitiu ajustar dinamicamente o comportamento do aplicativo sem a necessidade de lançar uma nova versão. Por exemplo, pudemos ativar ou desativar recursos, alterar mensagens de erro e até mesmo personalizar a interface do usuário com base em segmentos de usuários.

Desafios e Aprendizados

  • Performance: Garantir que o aplicativo fosse responsivo e rápido, especialmente ao carregar listas de produtos extensas.
  • Segurança: Proteger as comunicações entre o aplicativo e o BFF, bem como autenticar os usuários.
  • Testes: Criar testes unitários e de integração para garantir a qualidade do código.

Conclusão

Participar do desenvolvimento do E-commerce das Farmácias Panvel foi uma oportunidade incrível. Aprendemos muito sobre arquitetura, integração de serviços e como criar uma experiência de compra excepcional para os usuários. O uso do React Native, Node.js e Firebase Remote Config nos permitiu criar um aplicativo robusto e flexível. Além disso tive contato com diversos profissionais experientes, o que contribuiu muito para o meu crescimento.