Skip to content

codebywiam/ai-career-coach

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AI Career Coach

THE intelligent job application assistant powered by LangChain and Ollama.

An AI-powered career coaching application that helps job seekers create compelling cover letters, optimize resumes, prepare for interviews, and analyze skill gaps—all running locally with complete privacy.

AI Career Coach Demo

Features

Cover Letter Generator

  • Generates tailored, professional cover letters
  • Personalized based on your experience and target role
  • ATS-friendly formatting
  • Professional tone with engaging content

Resume Enhancer

  • Optimizes resumes for Applicant Tracking Systems (ATS)
  • Incorporates keywords from job descriptions
  • Improves action verbs and quantifiable achievements
  • Maintains truthfulness while highlighting strengths

Career Advisor

  • Provides strategic career guidance
  • Identifies strengths and improvement areas
  • Suggests skill development priorities
  • Offers networking and job search strategies

Interview Preparation

  • Generates role-specific interview questions
  • Provides sample answers based on your background
  • Highlights key points to emphasize
  • Covers behavioral and technical questions

Skills Gap Analysis

  • Compares your skills against job requirements
  • Identifies missing or weak skills
  • Creates prioritized learning roadmap
  • Suggests specific resources and certifications
  • Provides realistic timelines

Key Differentiators

  • 100% Local & Private: All processing happens on your machine
  • No API Costs: Uses free, open-source models via Ollama
  • Offline Capable: Works without internet connection
  • Customizable: Easy to modify prompts and add features
  • Multi-functional: 5 tools in one application
  • Modern UI: Clean, intuitive Gradio interface

Architecture

┌─────────────┐
│   Gradio    │  ← User Interface
│     UI      │
└──────┬──────┘
       │
       ▼
┌─────────────┐
│  LangChain  │  ← Prompt Engineering & Orchestration
│   Pipeline  │
└──────┬──────┘
       │
       ▼
┌─────────────┐
│   Ollama    │  ← Local LLM (phi3:mini)
│   (Local)   │
└─────────────┘

Project Structure

ai-career-coach/
├── app.py                      # Main application file
├── requirements.txt            # Python dependencies
├── README.md                   # Project documentation
├── Dockerfile                  # Docker configuration
├── docker-compose.yml          # Docker Compose setup
├── .gitignore                 # Git ignore rules
├── .github/
│   └── workflows/
│       ├── ci.yml             # Continuous Integration
│       └── deploy.yml         # Deployment pipeline
├── tests/
│   ├── __init__.py
│   ├── test_app.py            # Application tests
│   └── conftest.py            # Test configuration
├── assets/
│   ├── demo_screenshot.png    # Application screenshot
│   ├── demo_video.mp4         # Demo video
│   └── logo.png               # Project logo
└── LICENSE                    # MIT License

Requirements

gradio
langchain
langchain-community
ollama

Quick Start

Prerequisites

  • Python 3.8 or higher
  • Ollama installed and running
  • 8GB+ RAM recommended

Installation

  1. Clone the repository

    git clone https://github.com/codebywiam/ai-career-coach.git
    cd ai-career-coach
  2. Create a virtual environment

    python -m venv venv
    
    # On Windows
    venv\Scripts\activate
    
    # On macOS/Linux
    source venv/bin/activate
  3. Install dependencies

    pip install -r requirements.txt
  4. Install and run Ollama

    # Install Ollama from https://ollama.ai/
    
    # Pull the model
    ollama pull llama2
  5. Run the application

    python app.py
  6. Open in browser

    Navigate to: http://127.0.0.1:7860
    

Usage Examples

Generating a Cover Letter

  1. Navigate to the "Cover Letter Generator" tab
  2. Enter the company name (e.g., "Google")
  3. Enter the job title (e.g., "Software Engineer")
  4. Describe your experience and achievements
  5. Click "Generate Cover Letter"
  6. Review and personalize the output

Enhancing Your Resume

  1. Go to "Resume Enhancer"
  2. Paste the full job description
  3. Paste your current resume
  4. Click "Enhance Resume"
  5. Compare the enhanced version with your original

Interview Preparation

  1. Open "Interview Prep" tab
  2. Enter company and role details
  3. Provide your background summary
  4. Generate questions and answers
  5. Practice your responses out loud

Configuration

Changing the LLM Model

Edit app.py to use different Ollama models:

llm = Ollama(model="llama2")  # or "mistral", "codellama", etc.

Adjusting Output Length

Modify prompt templates in app.py to specify desired lengths:

COVER_LETTER_PROMPT = """...
- Keep it concise (300-400 words)  # Adjust as needed
..."""

Testing

# Run tests 
pytest tests/

# Check code quality
flake8 app.py
black app.py --check

Docker Deployment

Using Docker Compose (Recommended)

# Start the application with Ollama
docker-compose up -d

# View logs
docker-compose logs -f

# Stop the application
docker-compose down

Using Docker Only

# Build the image
docker build -t ai-career-coach .

# Run the container
docker run -p 7860:7860 \
  -e OLLAMA_HOST=http://host.docker.internal:11434 \
  ai-career-coach

Future Improvements

  • PDF/DOCX resume upload and parsing
  • Export functionality (PDF/DOCX)
  • Multi-language support
  • Job application tracker
  • Salary negotiation coach
  • LinkedIn profile optimizer
  • Browser extension
  • Mobile app version
  • User authentication
  • Cloud deployment option

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors