O Task Manager é uma aplicação web moderna para gerenciamento de tarefas, projetos e workspaces colaborativos, construída com tecnologias de ponta tanto no frontend quanto no backend. A aplicação permite a organização eficiente de tarefas entre membros de diferentes workspaces, proporcionando integração perfeita entre equipes e maior produtividade.
- Gerenciamento de Workspaces e Projetos.
- Criação, edição e exclusão de Tarefas.
- Integração com Google OAuth2 para autenticação.
- Colaboração em tempo real entre membros de um workspace.
- Interface moderna e responsiva com Next.js, Tailwind CSS e ShadCN UI.
Task-Manager/
├── client/ # Frontend (Next.js, TypeScript, TailwindCSS)
│ ├── public/
│ ├── src/
│ └── package.json
│
└── server/ # Backend (Node.js, Express, MongoDB, TypeScript)
├── application/
├── domain/
├── infrastructure/
├── interfaces/
├── shared/
└── package.json
- Next.js — Server-side rendering e geração estática de páginas.
- TypeScript — Tipagem estática para maior segurança.
- Tailwind CSS — Estilização rápida e responsiva.
- ShadCN UI — Biblioteca de componentes acessíveis e customizáveis.
- React Query — Gerenciamento de estado assíncrono (requisições e cache).
- Axios — Cliente HTTP para integração com APIs.
- Zod — Validação de schemas no frontend.
- Node.js com Express — Construção da API REST.
- MongoDB com Mongoose — Banco de dados NoSQL para persistência.
- TypeScript — Segurança e robustez na tipagem.
- Passport.js — Autenticação via Google OAuth2.
- Jest — Testes unitários e de integração.
- Clean Architecture — Organização em camadas para maior desacoplamento.
- DDD (Domain-Driven Design) — Definição clara de entidades e regras de negócio.
- Node.js (v16+)
- MongoDB
- Bun ou npm
1️⃣ Clone o repositório:
git clone <URL do repositório>
cd Task-Manager2️⃣ Instale as dependências do frontend e backend:
cd client && bun install
cd ../server && bun install3️⃣ Configure as variáveis de ambiente:
-
Crie um arquivo
.envem/servercom as seguintes variáveis:MONGO_URI: URL do banco de dados MongoDBGOOGLE_CLIENT_ID: ID do Google OAuth2GOOGLE_CLIENT_SECRET: Secret do Google OAuth2
4️⃣ Execute ambos os servidores:
cd client && bun dev
cd ../server && bun devA aplicação estará acessível em: http://localhost:3000
A documentação completa dos endpoints da API pode ser encontrada em /server/docs após iniciar o backend.
Para rodar os testes do backend:
cd server
bun testContribuições são bem-vindas! Sinta-se à vontade para abrir issues e pull requests.
MIT License.
Desenvolvido por Brenno — Feito com ☕ e 💜.