Sobre | Funcionalidades | Layout | Como executar | Tecnologias | Autor | Licença
📊 Manage Participations - tem como objetivo registrar participantes e seu percentual de participação representando essa distribuição em um gráfico de pizza.
- É possível registrar participantes na plataforma web enviando:
- primeiro nome do participante
- sobrenome do participante
- percentual de participação
Este projeto é divido em duas partes:
- Backend (pasta server)
- Frontend (pasta web)
💡O Frontend precisa que o Backend esteja sendo executado para funcionar.
Antes de começar, você vai precisar ter instalado em sua máquina as seguintes ferramentas: Git, Node.js, MongoDB.
# Clone este repositório
$ git clone https://github.com/JonasCastro/fullstack-challenge-cotabox.git
# Acesse a pasta do projeto no terminal/cmd
$ cd fullstack-challenge-cotabox
# Vá para a pasta backend
$ cd backend
# Instale as dependências
$ yarn
# Execute a aplicação em modo de desenvolvimento
$ yarn dev:server
# O servidor inciará na porta:3333
# Para executar os testes
$ yarn test
# Vá para a pasta da aplicação Front End
$ cd front
# Instale as dependências
$ yarn
# Execute a aplicação em modo de desenvolvimento
$ yarn start
# A aplicação será aberta na porta:3000 - acesse http://localhost:3000
# Vá para a pasta backend
$ cd backend
# Instale as dependências
$ yarn
# Para executar os testes
$ yarn test
#Obs: Abra o arquivo ./backend/coverage/lcov-report/index.html no navegador para acompanhar o relatório de testes.
Testes Backend
-
should be able to list the users
: A aplicação deve permitir que seja retornado um array com todos os participantes que foram criados até o momento. -
should be able to create a new user
: A aplicação deve permitir que um participante seja criado. -
should be able to delete the user
: A aplicação deve permitir que um participante seja deletado. -
should not be able to delete a user that does not exist
: A aplicação não deve poder excluir um participante que não existe. Caso não exista, retornar um erro com status400
.
As seguintes ferramentas foram usadas na construção do projeto:
Website (React + TypeScript)
Veja o arquivo package.json
Server (NodeJS + TypeScript)
Veja o arquivo package.json
- Gráficos: ChartJS
- Editor: Visual Studio Code → Extensions: ESlintJS, EditorConfig
- Markdown: StackEdit, Markdown Emoji
- README Template: README-ecoleta
- Teste de API: Insomnia
- Ícones: Feather Icons
- Fontes: Roboto
Jonas Castro
Este projeto esta sobe a licença MIT.
Feito com 💙 por Jonas Castro 👋 Entre em contato!