A full-stack web application for tracking job applications, managing interviews, and organizing your job search process.
- Track job applications with detailed information
- Manage application sources (LinkedIn, Indeed, etc.)
- Tag system for better organization
- Interview scheduling with Google Calendar integration
- Email reminders for upcoming interviews
- Export applications to Excel
- Dark mode support
- Responsive design for mobile and desktop
- React
- Vite
- Tailwind CSS
- React Testing Library
- Vitest
- Lucide React Icons
- Node.js
- Express
- MongoDB
- Passport (Google OAuth)
- Node-cron
- Nodemailer
- Node.js (v18 or higher)
- MongoDB
- Google Cloud Console project with Calendar and Gmail APIs enabled
- Clone the repository
git clone https://github.com/FabienDostieIT/JobTracker
cd JobTracker- Install dependencies
# Install backend dependencies
cd backend
npm install
# Install frontend dependencies
cd ../frontend
npm install- Configure environment variables
# In backend directory, create .env file
cp .env.example .env
# Edit .env with your configuration- Start the development servers
# Start backend server (from backend directory)
npm run dev
# Start frontend server (from frontend directory)
npm run devThe application will be available at http://localhost:5173
# Run frontend tests
cd frontend
npm test
# Run frontend tests with coverage
npm run test:coverage- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.