API RESTful desenvolvida com Node.js, Express, TypeScript e PostgreSQL para gerenciamento de usuários e tarefas. Inclui autenticação com JWT e arquitetura limpa, pronta para produção.
- Node.js
- TypeScript
- Express
- TypeORM
- PostgreSQL
- Docker
- JWT
- Bcrypt
- Dotenv
git clone https://github.com/IgorCamps/task-manager-api.git
cd task-manager-api
npm installCrie um arquivo .env na raiz do projeto com as seguintes variáveis:
DB_HOST=localhost
DB_PORT=5432
DB_USERNAME=postgres
DB_PASSWORD=admin
DB_NAME=taskmanager
JWT_SECRET=secreta_super_seguradocker run --name postgres-db -e POSTGRES_PASSWORD=admin -e POSTGRES_DB=taskmanager -p 5432:5432 -d postgresnpm run devA API estará disponível em: http://localhost:3000
POST /users: Criar novo usuárioPOST /login: Fazer login e receber token JWT
GET /tasks: Listar tarefas do usuárioPOST /tasks: Criar nova tarefaPUT /tasks/:id: Atualizar tarefaDELETE /tasks/:id: Remover tarefa
Utilize o token JWT retornado no login para acessar as rotas protegidas.
Envie o token no header:
Authorization: Bearer SEU_TOKEN_AQUI
src/
├── controllers/
├── entities/
├── routes/
├── middlewares/
├── data-source.ts
├── index.tsInclui collections para facilitar o teste das rotas (você pode importar no Insomnia).