Seja bem-vindo(a) ao repositório do App Delivery de Bebidas! Este projeto foi realizado em grupo durante meus estudos na Trybe, sendo o projeto de conclusão de Back-End.
Composição do grupo:
- Gustavo Dutra
- Juliana Martinelli
- Pedro Boccaletti
- Ricardo Souza
Neste projeto criamos um MVP de um aplicativo de delivery de bebidas. Fomos responsáveis por construir tanto o Front-End, quanto o Back-end e o Banco de Dados da aplicação.
Utilizamos da metodologia Kanban para organizarmos nosso progresso e possuir total visibilidade e transparência de cada etapa. Além disso, realizávamos daily meetings antes do início de cada dia de trabalho, para que todos ficassem à par da situação atual de cada integrante, o que seria feito no dia e se havia algum impedimento/bloqueio em alguma tarefa.
Fui responsável pela construção do Front-End e estilização do projeto, junto ao Pedro Boccaletti. Ricardo Souza e Juliana Martinelli foram responsáveis pela construção do Back-End e realização de testes. Importante ressaltar que cada equipe prestava suporte à outra e realizava pair programming quando suas tarefas já haviam sido concluídas. Dessa forma, todos os integrantes puderam participar de todas as etapas da aplicação, do início ao fim.
Aplicação
- JavaScript
- GIT
- DOCKER
- EsLint
Front-End
- React-Redux
- React-Hooks
- Axios
Back-End
- Node.js
- Express
- Sequelize
- JWT
- MySQL
Estilização
- Mobile First
- Tailwind
- Styled-Components
- React Icons
Testes
- Front-End: Jest
- Back-End: Sinon / Mocha / Chai
A) Acesso via login: tanto clientes, quanto pessoas vendedoras e administradores devem ter acesso ao aplicativo via login, porém para funções diferentes: (1) A pessoa cliente, que compra da lista de produtos; (2) A pessoa vendedora, que aprova, prepara e entrega; (3) A pessoa administradora, que gerencia quem usa o aplicativo;
B) Fazer a comunicação entre clientes e pessoas vendedoras: a pessoa cliente faz o pedido via "carrinho de compras" e a pessoa vendedora aprova, prepara e envia esse pedido. Quando o produto é recebido por quem comprou, essa pessoa marca o pedido como "recebido". Ambos devem possuir detalhes sobre seus pedidos;
C) Se a pessoa cliente faz o pedido, o mesmo deve aparecer para a pessoa vendedora em seu dash de pedidos após a atualização da página. A pessoa cliente, por sua vez, deve ter as informações sobre seu pedido quando sua página for atualizada, ou seja, ter informações se o pedido está sendo preparado ou se já saiu pra entrega;
O banco de dados contituiu-se de 4 tabelas que se relacionam entre si, que são:
- Usuários
- Vendas
- Produtos da Venda
- Produtos
Diagrama de Entidade e Relacionamento