O DOARTE: A Arte de Doar surgiu de um desafio proposto pela empresa Stone para a turma T4 Resilia + Stone. O objetivo era a construção de uma plataforma na qual usuários pudessem se cadastrar e criar vaquinhas com causas sociais a fim de arrecadar recursos.
Cabe destacar que o produto é uma mera simulação do que seria uma aplicação real. Portanto, aqui não se aplica transações bancárias e o que é transacionado são moedas fictícias.
Nossa api possui a arquitetura REST e atualmente pode realizar as operações CRUD de usuários e vaquinhas (ou outro produto).. Para visualizar o projeto há duas opções:
- Copie esse link: https://doarte-api.herokuapp.com/ e interaja com nossa API através de uma aplicação front-end ou programas como Postman ou Insomnia.
- Para rodá-la localmente em sua máquina leia atentamente o fim desse arquivo 😉.
- Cadastrar um usuário
- Login na conta do usuário
- Atualizar as informações ou deletar seu usuário
- Cadastrar uma vaquinha
- Atualizar as informações ou deletar sua vaquinha
- Doar para outras vaquinhas
- Git instalado
- Docker instalado
- Node instalado
- Npm or Yarn instalado
- Além disto é bom ter um editor para trabalhar com o código como VSCode
O projeto foi desenvolvido utlizando as seguintes tecnologias:
$ git clone https://github.com/anvitrola/doarte-api
$ cd doarte-api
$ code .
$ npm install
$ docker-compose up
6️⃣️ Divida o terminal em dois usando o comando Ctrl+Shift+5 ou o menu com 3 pontos no lado direito.
$ npm start
8️⃣ O servidor inciará na porta:3000 - acesse http://localhost:3000
Rota para cadastrar um usuário.
Verbo:POST.
Precisa estar logado:Não.
Template para enviar os dados:
{
"name":"insira o nome aqui",
"email":"insira o email aqui",
"password":"insira a senha aqui",
}
Rota para autenticar e logar um usuário.
Verbo:POST.
Precisa estar logado:Não.
Template para enviar os dados:
{
"email":"insira o email aqui",
"password":"insira a senha aqui",
}
⚠️ Rotas que precisam que você esteja logado necessitam do header 'x-access-token' com o valor do seu token (recebido após o login ser bem sucedido).
Rota para verificar a lista de usuários.
Verbo:GET.
Precisa estar logado:Não.
Rota para retornar informações do usuário.
Verbo:GET.
Precisa estar logado:Sim.
Rota para atualizar as informações do usuário.
Verbo:PATCH.
Precisa estar logado:Sim.
Template para enviar os dados:
{
"name":"insira o nome aqui",
"email":"insira o email aqui",
"password":"insira a senha aqui",
//você pode alterar apenas um, apenas delete os outros campos e envie apenas os campos desejados.
}
Rota para deletar o usuário.
Verbo:PATCH.
Precisa estar logado:Sim.
Rota para realizar uma doação á uma vaquinha.
Verbo:POST.
Precisa estar logado:Sim.
Passar o id da vaquinha como parâmetro.
Template para enviar os dados:
{
"donation_value": 25 //Insira o valor aqui (minimo 25)
}
Rota para criar uma vaquinha.
Verbo:POST.
Precisa estar logado:Sim.
Template para enviar os dados:
{
"title": "Insira o titulo aqui",
"goal_value": 500 //meta da vaquinha,
"deadline":"06-12-2021T00:00:00" //formato de data: DD-MM-YYYY ,
"description": "Insira a descrição aqui"
}
Rota para retorna todas as vaquinhas ativas do site.
Verbo:GET.
Precisa estar logado:Não.
Rota para retornar as vaquinhas do usuário.
Verbo:GET.
Precisa estar logado:Sim.
Rota para deletar o usuário (precisa estar logado).
Verbo:PATCH.
Precisa estar logado:Sim.
Passar o id da vaquinha como parâmetro.
Template para enviar os dados:
{
"title": "Insira o titulo aqui",
"goal_value": 500 //meta da vaquinha,
"description": "Insira a descrição aqui"
//você pode alterar apenas um, apenas delete os outros campos e envie apenas os campos desejados.
}
Rota para deletar uma vaquinha.
Verbo:PATCH.
Precisa estar logado:Sim.
Passar o id da vaquinha como parâmetro.
Ana Vitória Viana |
Rafael Almeida |
Elivelton Souza |
Peter Silva |
Contruibuições são bem-vindas, desde que aberto um pull request e requisitado um review dos membros da equipe.
DOARTE is MIT licensed 💖