Trilha Backend JR
Este projeto tem como objetivo desenvolver uma API RESTful para gerenciamento de tarefas, proporcionando funcionalidades de CRUD (Create, Read, Update, Delete) de tarefas, autenticação de usuários e armazenamento dos dados em um banco de dados.
Objetivos:
- Criar uma API que permita CRUD (Create, Read, Update, Delete) de tarefas.
- Implementar autenticação de usuários.
- Utilizar um banco de dados SQLite para armazenar as tarefas.
- Documentar todo o processo e apresentar as conclusões.
Autenticação de Usuários:
- Registro de Usuário: Endpoint para registrar um novo usuário.
- Login de Usuário: Endpoint para autenticar um usuário e gerar um token JWT.
- Proteção de Rotas: Garantir que apenas usuários autenticados possam acessar os endpoints de tarefas.
Requisitos Funcionais:
- Criar Tarefa: Endpoint para criar uma nova tarefa.
- O usuário estar autenticado
- Passa um titulo e uma descrição Exemplo:
- Listar Tarefas: Endpoint para listar todas as tarefas.
- Atualizar Tarefa: Endpoint para atualizar uma tarefa existente.
- O usuário estar autenticado
- A task ter sido ele quem a criou
- Passa um titulo ou uma nova descrição Exemplo:
- O usuário estar autenticado
- O Id deve ser informado como parâmetro na url
- O usuário autenticado ter criado a task
/api/task
É obrigatório para criar uma task:"title": "Task Title",
"description": "Task Description"
/api/task
Rota para listar todos as tarefas(tasks)/api/task
É obrigatório para atualizar uma task:"title": "Task Title 2",
"description": "Other Description"
Deletar Tarefa: Endpoint para deletar uma tarefa existente.
/api/task
É obrigatório para deletar uma task:
Em routes é o local onde especifico o caminho base para cada Endpointroutes.use("/api/task", Tasks);
é o caminho base para os endpoint de tasks Ja no controller de _src/tasks_ é onde eu indico o final de cada rota e os middleware caso necessário
Conclusão
Muito obrigado pela atenção.
jefersonsann.online/docs/