ToDo Reminder é uma aplicação full stack desenvolvida com Node.js (Express) no backend e Next.js no frontend. Permite que usuários cadastrem tarefas.
- Express.js
- MongoDB + Mongoose
- JWT para autenticação
- Bcrypt para hash de senha
- Dotenv, Helmet, CORS
- Next.js (App Router)
- Tailwind CSS
- ShadCN UI
- React Hook Form + Zod
- Axios
- Cadastro e login com JWT
- Login com usuário
- CRUD de tarefas (criar, editar, excluir, listar)
- Organização por status e categorias
- UI responsiva e acessível
- Node.js v18+
- MongoDB local ou Atlas
git clone https://github.com/seu-usuario/todo-reminder.git
cd todo-remindercd backend
npm installPORT=5000
MONGO_URI=mongodb://localhost:27017/todo_reminder
JWT_SECRET=sua_chave_jwtnpm run devcd ../frontend
npm installNEXT_PUBLIC_API_URL=http://localhost:5000/apinpm run devbackend/
├── src/
│ ├── controllers/
│ ├── models/
│ ├── routes/
│ ├── middlewares/
│ └── utils/
frontend/
├── app/
├── components/
├── lib/
├── styles/O backend roda um cron job a cada minuto para verificar tarefas com dueDate próxima (ex: 30 minutos antes). Ao encontrar, envia um email para o usuário usando Nodemailer.
- Senhas criptografadas com bcrypt
- Tokens JWT protegidos com middleware
- Helmet e CORS configurados
- Validação no backend com express-validator (ou Zod)