Skip to content

Repositório destinado ao projeto final da aceleração Luiza < Code > turma NodeJS, realizada pela Gama Academy e Luizalabs. Objetivo do projeto é criar uma API REST de Omni Channel utilizando NodeJS, Sequelize, Express e PostgreSQL.

License

Notifications You must be signed in to change notification settings

saalua/luizacode-omnichannel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Luiza <Code> - Omni Channel

luiza-banner

O objetivo do projeto final do Luiza < Code > é desenvolver um serviço HTTP que resolve a funcionalidade de Omni Channel do cliente.

Requisitos  |  Instalação e configuração  |  Rodando o projeto  |  Endpoints  |  Banco de dados  |  Testes  |  Colaboradoras

✔️ Pré-requisitos

API contendo os seguintes endpoints:

  • Listar produtos
  • Listar lojas físicas
  • Cadastrar cliente
  • Adicionar um produto na lista de compra da cliente;
  • Remover um produto da lista de compra da cliente;
  • Finalizar compra
  • Consultar todas as compras realizadas da cliente;

🚀 Instalação e configuração

Antes de começar, verifique se você atendeu aos seguintes requisitos:

  • Você instalou a versão mais recente do npm, node e postgres

Para a instalação, siga estas etapas:

  1. Faça um clone do repositório:
  git clone https://github.com/saalua/luizacode-omnichannel.git
  1. Na pasta do projeto, abra o terminal e execute o comando abaixo para instalar as dependências:
npm install
  1. Crie um arquivo chamado .env na raiz do projeto com as variáveis abaixo e o preenche com as informações de autenticação do seu banco de dados, como no exemplo:
DB=postgres
USER=postgres
PASS=senha
HOST=localhost
PGPORT=5432
JWTSecret=palavra-secreta

☕ Usando o Omni Channel

Para usar, siga estas etapas:

  1. Na pasta da aplicação, abra o terminal e digite. O servidor irá iniciar na porta 3000, caso queira trocar a porta, altere no arquivo app.js
npm start
  1. Par abrir a documentação Swagger, digite no navegador:
localhost:3000/docs

📃 Documentação Swagger

Endpoints acessíveis sem autenticação:

  • Retornar todas as lojas
  • Retornar todos os produtos e produtos por id
  • Retornar todos os produtos
  • Criar um novo cliente
  • Fazer login

endpoints


Endpoints com autenticação:

  • Retornar todos os pedidos de um cliente
  • Criar um novo pedido
  • Retornar um único pedido de um cliente
  • Adicionar e remover produtos
  • Finalizar a compra
  • Retirar a compra

endpoints

🎲 Banco de dados

Diagrama do banco de dados:


diagrama banco de dados


🐛 Testes

Os testes automatizados da aplicação foram desenvolvidos com o framework Cypress e os testes podem ser encontrados no repositório abaixo:

Repositório Cypress

cypress


🤝 Squad SPARCK GIRLS

Foto de Julia Dutra
Julia Dutra
Foto de Layane Lino
Layane Lino
Foto de Letícia Cesion
Letícia Cesion
Foto de Luana Santos
Luana Santos
Foto de Nathália Veneziano
Nathália Veneziano
Foto de Walquiria Lima
Walquiria Lima

💜 Mentora

Foto de Tainá Medeiros
Tainá Medeiros

About

Repositório destinado ao projeto final da aceleração Luiza < Code > turma NodeJS, realizada pela Gama Academy e Luizalabs. Objetivo do projeto é criar uma API REST de Omni Channel utilizando NodeJS, Sequelize, Express e PostgreSQL.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published