Voltar aos projetos

Protótipo · Compra conversacional

E-commerce mobile

Um protótipo de supermercado com catálogo, carrinho e pedidos, em que um assistente conversa sobre os produtos e aciona interações na interface.

  • React Native
  • Expo
  • TypeScript
  • Node.js
  • Express
  • WebSocket
  • Sequelize
  • MySQL
  • Gemini

Contexto

A proposta foi explorar uma compra que começa por uma conversa, mantendo o catálogo e o carrinho como referências concretas. Em vez de um chat isolado, o protótipo conecta perguntas sobre produtos e estoque a ações de listagem, adição e remoção na experiência de compra.

Minha participação

Desenvolvi de ponta a ponta o cliente Expo e a API, com autenticação, catálogo, carrinho local e pedidos. Integrei o Gemini ao contexto de produtos e histórico, a comunicação por WebSocket e a interpretação de comandos que ligam a resposta do assistente aos componentes da interface.

Como funciona

  1. A pessoa consulta o catálogo ou envia uma pergunta ao assistente pela conexão WebSocket.
  2. O servidor busca produtos, disponibilidade e, quando pertinente, histórico de pedidos para compor o contexto da resposta.
  3. Comandos reconhecidos na resposta apresentam produtos ou alteram o carrinho, que é mantido no armazenamento local do aplicativo.
  4. O checkout de demonstração grava pedido e itens e atualiza o estoque no banco, sem uma cobrança financeira real.

Decisões técnicas

Conectar conversa a dados concretos

O assistente recebe produtos recuperados do catálogo, com identificadores usados pelo parser e pela interface. Essa ligação permite experimentar ações verificáveis além de uma resposta apenas textual.

Manter o protótipo observável

Catálogo, carrinho, mensagem e pedido continuam representados em estruturas próprias. A separação ajuda a entender se o comportamento veio da busca, do modelo, do parser ou da persistência.

Aprendizados

Uma resposta bem escrita não garante uma ação correta. O experimento evidenciou a necessidade de validar comandos e dados de compra deterministicamente e de separar a memória temporária da conversa do estado persistente do negócio.

Limites e próximos passos

  • Protótipo: o controlador de pagamento não está implementado e o checkout não processa pagamentos reais.
  • O histórico de conversa fica em memória no servidor; validação de compra e testes de negócio precisam evoluir antes de uso comercial.