maxsonferovante / ignite-trabalhando-com-middlewares

Este projeto faz parte do Desafio 02 do Bootcamp Ignite da Rocketseat, focado em aprofundar o conhecimento sobre middlewares no Express. O objetivo é consolidar os conceitos adquiridos até o momento.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Desafio 02 - Trabalhando com Middlewares

Rocketseat Education

Rocketseat Project License

🚀 O que é e o propósito do projeto

Este projeto faz parte do Desafio 02 do Bootcamp Ignite da Rocketseat, focado em aprofundar o conhecimento sobre middlewares no Express. O objetivo é consolidar os conceitos adquiridos até o momento.

A aplicação gerencia tarefas (todos) para usuários, permitindo a criação, listagem, atualização e exclusão de tarefas, além de operações relacionadas a usuários.

💻 Tecnologias

🔌 Middlewares da aplicação

Neste desafio, o foco é nos middlewares, que desempenham funções cruciais para garantir o funcionamento correto da aplicação. Aqui está uma breve descrição de cada middleware:

checksExistsUserAccount

Valida a existência de um usuário com base no username passado no header da requisição. Se existir, repassa o usuário para request.user e chama a função next.

checksCreateTodosUserAvailability

Verifica se o usuário pode criar um novo todo com base no plano (grátis ou Pro) e na quantidade de todos que possui. Permite a criação se estiver no plano grátis e tiver menos de 10 todos ou se estiver no plano Pro.

checksTodoExists

Valida se o todo pertence ao usuário, com base no username do header e no id do todo passado nos parâmetros. Se válido, passa o todo e o usuário para request.todo e request.user, respectivamente, e chama a função next.

findUserById

Localiza um usuário com base no id fornecido nos parâmetros da rota. Se encontrado, repassa o usuário para request.user e chama a função next.

Especificação dos testes

Os testes avaliam o funcionamento correto dos middlewares e estão detalhadamente descritos no arquivo de especificação dos testes.

...

🛠️ Como usar

  1. Clone este repositório.
  2. Instale as dependências com o comando: yarn.
  3. Rode a aplicação com o comando: yarn dev.
  4. A aplicação estará disponível em: http://localhost:3333.

📝 Licença

Esse projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

Feito com 💜 por Maxson Almeida 👋

GitHub LinkedIn

About

Este projeto faz parte do Desafio 02 do Bootcamp Ignite da Rocketseat, focado em aprofundar o conhecimento sobre middlewares no Express. O objetivo é consolidar os conceitos adquiridos até o momento.


Languages

Language:JavaScript 100.0%