An automated job application system that helps streamline the process of finding, analyzing, and applying to jobs. The system uses AI to generate personalized application emails and manages the entire application workflow.
- Campaign-based job application management
- Multi-step job processing pipeline
- AI-powered email generation (supports OpenAI, Claude, and Ollama)
- Automated email drafting and sending
- Comprehensive logging and status tracking
- RESTful API with Swagger documentation
- Node.js (v18+)
- MongoDB
- Redis
- OpenAI API key (optional)
- Claude API key (optional)
- Mailgun API key
-
Clone the repository:
git clone https://github.com/daviddodda1/jaas cd jaas
-
Install backend dependencies:
npm install
-
Install frontend dependencies:
cd client npm install cd ..
-
Create a
.env
file in the root directory:MONGO_URI=mongodb://mongodb_host:27017/job_application REDIS_HOST=redis_host REDIS_PORT=6379 OPENAI_API_KEY=your_openai_key CLAUDE_API_KEY=your_claude_key [email protected] GMAIL_APP_PASSWORD=your_app_specific_password
-
Start the backend (from root directory):
npm run dev
-
Start the frontend (in a new terminal):
cd client npm run dev
-
Access the application:
- Frontend: http://localhost:3001
Create a .env
file based on .env.example
:
MONGO_URI
: MongoDB connection string (default: mongodb://localhost:27017/your_database)REDIS_HOST
: Redis host (default: localhost)REDIS_PORT
: Redis port (default: 6379)OPENAI_API_KEY
: Your OpenAI API keyCLAUDE_API_KEY
: Your Anthropic Claude API keyOLLAMA_HOST
: Ollama API host (default: http://localhost:11434)MAILGUN_DOMAIN
: Your Mailgun domainMAILGUN_API_KEY
: Your Mailgun API key
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Create a new Pull Request
This project is licensed under the MIT License.