DuckTrack is a web application that helps users store, organize, and track job applications in one place. It provides a clear overview of application statuses, progress, and key metrics throughout the job-search process.
This repository contains the backend part of the application, responsible for authentication, business logic, database management, and API endpoints used by the frontend.
- Secure user registration and login
- Password hashing with bcrypt
- Email verification via token-based confirmation
- Session-based authentication with HttpOnly cookies
- Protected API routes (users can access only their own data)
- CRUD operations for job applications
- Interview email reminders (scheduled jobs via cron)
- Auto “outdated application” status update for applications with no activity for a long time
- Node.js, Express.js
- MySQL
- express-session + express-mysql-session (session store)
- bcrypt (password hashing)
- crypto (secure token generation)
- nodemailer (emails)
- node-cron (scheduled reminders + status updates)
- dotenv, cors
npm install
npm run dev