TaskManagerAPI é uma aplicação backend para gerenciamento de tarefas que utiliza o MongoDB como banco de dados. Este projeto permite que os usuários criem, acompanhem e gerenciem suas tarefas diárias, fornecendo recursos como registro de usuários, autenticação, criação de tarefas, atualização de status, atribuição de tarefas a usuários específicos e pesquisa de tarefas.
- Node.js
- Express.js
- Docker
- MongoDB
- Mongoose
- JSON Web Tokens (JWT)
Certifique-se de ter o Docker instalado em sua máquina. Você pode baixar o Docker em: https://www.docker.com/get-started
- Clone o repositório:
git clone https://github.com/seu-usuario/TaskManagerApi.git
- Acesse o diretório do projeto:
cd TaskManagerApi
- Inicie o MongoDB usando o Make:
make up
Isso irá executar o Docker-compose configurando as variavéis de ambiente e criará um contêiner Docker com o MongoDB em execução.
- Instale as dependências do projeto:
pnpm install
- Crie um arquivo
.env
no diretório raiz do projeto e defina as seguintes variáveis de ambiente:
DB_HOST=""
DB_PORT=""
DB_NAME=""
DB_USER=""
DB_PASS=""
MONGO_URI=mongodb://$DB_USER:$DB_PASS@$DB_HOST:$DB_PORT/$DB_NAME?authSource=admin
PORT=""
ENCRYPT_SECRET=""
JWT_SECRET=""
Certifique-se de substituir as variaveis de acordo com seu ambiente
- Inicie o servidor localmente:
npm start
A aplicação estará disponível em http://localhost:3000.
POST /api/register
: Registra um novo usuário.POST /api/login
: Realiza o login do usuário e retorna um token JWT.GET /api/tasks
: Recupera todas as tarefas do usuário autenticado.POST /api/tasks
: Cria uma nova tarefa.PUT /api/tasks/:taskId
: Atualiza o status de uma tarefa.PUT /api/tasks/:taskId/assign/:userId
: Atribui uma tarefa a um usuário específico.GET /api/tasks/search
: Pesquisa tarefas com base em critérios.
Contribuições são bem-vindas! Se você encontrar algum problema ou tiver sugestões de melhorias, abra uma issue ou envie um pull request.
Este projeto está licenciado sob a Licença MIT.