Este projeto consiste em uma API para realizar o CRUD de tasks (tarefas), onde é possível criar, listar, atualizar, remover e marcar como completa uma task, além da importação de tasks em massa através de um arquivo CSV.
- Node.js - É um ambiente de execução Javascript server-side.
- CSV Parser - É uma biblioteca para ler e analisar arquivos CSV.
- Criação de uma task
- Listagem de todas as tasks
- Filtragem de tasks pelo título e descrição
- Atualização de uma task pelo id
- Remoção de uma task pelo id
- Marcação de uma task como completa pelo id
- Importação de tasks em massa através de um arquivo CSV
# Clonar o repositório
$ git clone
# Entrar no diretório
$ cd ignite-node-desafio-01
# Instalar as dependências
$ pnpm install / npm install
# Iniciar o projeto
$ pnpm dev / npm run dev
Método | Rota | Descrição |
---|---|---|
🔒 GET | /tasks | Lista todas as tarefas salvas no banco de dados. É possível filtrar as tarefas pelo title e description adicionando os parâmetros na query string. |
📤 POST | /tasks | Cria uma tarefa no banco de dados, enviando os campos title e description no corpo da requisição. |
📥 PUT | /tasks/:id | Atualiza uma tarefa pelo id. No corpo da requisição, recebe somente o title e/ou description para serem atualizados. Se for enviado somente o title, significa que o description não pode ser atualizado e vice-versa. |
🗑️ DELETE | /tasks/:id | Remove uma tarefa pelo id. |
📥 PATCH | /tasks/:id/complete | Marca a tarefa como concluída ou não. |
📤 POST | /tasks/import | Importa tarefas em massa por meio de um arquivo CSV. O arquivo deve ser enviado pelo campo file do corpo da requisição. |