API RESTful para gerenciamento de tarefas com upload de arquivos e persistência usando SQLite. Desenvolvido com TypeScript, Express e Multer, este projeto é ideal para demonstração ao vivo de arquitetura modular e boas práticas de desenvolvimento.
- Criar uma nova tarefa
- Buscar tarefa por ID
- Listar todas as tarefas
- Atualizar uma tarefa
- Deletar uma tarefa
- Upload de arquivo relacionado a uma tarefa
- Persistência com banco de dados SQLite
- Testes automatizados com Jest
src/
├── main.ts # configuração do Express
├── controllers/ # lógica das rotas
├── routes/ # definição de endpoints
├── services/ # regras de negócio
├── database/
│ ├── index.ts # conexão SQLite
│ └── schema.sql # migração do banco
├── uploads/ # arquivos enviados
tests/
├── tasks.test.ts # testes da API
├── setup.ts # setup global (opcional)
jest.config.js # configuração do Jest