π Hosted Application: https://career-copilot-ai-xlbe.onrender.com/
An Intelligent AI-Powered Career Guidance Platform
Transform your job search with advanced resume analysis, personalized learning roadmaps, and AI-generated career assets.
Vid Link: https://drive.google.com/file/d/1V2kW5XIy1OHB-HbXajX1bebIdqk67-Wn/view?usp=sharing
Features β’ Architecture β’ Tech Stack β’ Quick Start β’ Demo β’ Deployment
Job seekers often struggle with:
- Understanding how well their resume matches target roles
- Identifying skill gaps and creating effective learning plans
- Writing compelling, personalized cover letters
- Preparing for role-specific technical interviews
- Efficiently searching across multiple job platforms
Career Copilot AI solves these challenges using a multi-agent AI system that provides comprehensive career guidance in one unified platform.
- Upload PDF resumes with automatic text extraction using pdfplumber
- 4-step agentic analysis workflow powered by Google Gemini:
- Resume Understanding - Extracts skills, education, experience
- Role Fit Analysis - Calculates match score against 8 target roles
- Learning Roadmap - Generates prioritized skill development plan
- Reflection - Validates analysis completeness
- Generates personalized, professional cover letters using LLaMA 3.1 (via Groq)
- Leverages BGE Embeddings + ChromaDB for semantic resume understanding
- Extracts and highlights specific projects, technologies, and achievements
- Download as professionally formatted PDF using ReportLab
- Role-specific technical and behavioral questions for 8 career paths
- LLM-powered personalized questions based on YOUR resume
- Difficulty levels (Easy/Medium/Hard) with expert tips
- STAR method guidance for behavioral responses
- Direct links to 5 major job platforms (LinkedIn, Indeed, Glassdoor, Google Jobs, Wellfound)
- Pre-configured search queries based on your target role
- Role-specific job search tips and strategies
- One-click export of analysis to Google Sheets via OAuth 2.0
- Organized tabs: Summary, Skills Gap, Learning Roadmap
- Perfect for tracking progress and sharing with mentors
- Curated video recommendations based on identified skill gaps
- Links to top tech learning channels
- Personalized learning content suggestions
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Frontend Layer β
β HTML/CSS (Tailwind) + Jinja2 Templates β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β FastAPI Backend β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β /analyze β β /cover-letterβ β /interview β β /jobs β β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β AI/ML Processing Layer β
β ββββββββββββββββββββββ ββββββββββββββββββββββ ββββββββββββββββββββ β
β β Google Gemini β β LLaMA 3.1 (Groq) β β BGE Embeddings β β
β β (Analysis Agent) β β (Cover Letters) β β + ChromaDB β β
β ββββββββββββββββββββββ ββββββββββββββββββββββ ββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Integration Layer β
β βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββββββββββ β
β β Google Sheets β β PDF Generation β β Resume Extraction β β
β β (OAuth 2.0) β β (ReportLab) β β (pdfplumber) β β
β βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
The resume analysis uses a multi-step agentic loop where each step builds on previous results:
Resume Upload β Text Extraction β Gemini Agent Loop
β
βββββββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββββββ
βΌ βΌ βΌ
Step 1: Understand Step 2: Analyze Step 3: Plan
Extract skills, Calculate role fit, Generate learning
experience, education identify gaps roadmap
β β β
βββββββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββββββ
βΌ
Step 4: Reflect
Validate completeness,
iterate if needed
| Technology | Purpose |
|---|---|
| FastAPI | High-performance async web framework |
| Uvicorn | ASGI server with hot reload |
| Jinja2 | Server-side templating |
| Technology | Purpose |
|---|---|
| Google Gemini 1.5 | Primary analysis agent (4-step reasoning loop) |
| LLaMA 3.1 (Groq) | Cover letter generation, interview questions |
| BGE Embeddings | Semantic understanding of resume content |
| ChromaDB | Vector store for similarity search |
| Sentence Transformers | Local embedding generation |
| Technology | Purpose |
|---|---|
| pdfplumber | PDF text extraction |
| ReportLab | PDF cover letter generation |
| Technology | Purpose |
|---|---|
| Google Sheets API | Export analysis data |
| OAuth 2.0 | Secure authentication |
| Google Generative AI | Gemini API access |
| Technology | Purpose |
|---|---|
| Tailwind CSS | Modern, responsive styling |
| HTML5 | Semantic markup |
| Vanilla JS | Interactive components |
- Python 3.10+ (recommended: 3.12)
- pip package manager
- API keys for Gemini and Groq (free tiers available)
git clone https://github.com/tisha-varma/Career-Copilot-AI.git
cd Career-Copilot-AI# Windows
python -m venv .venv
.venv\Scripts\activate
# Linux/Mac
python -m venv .venv
source .venv/bin/activatepip install -r requirements.txt# Windows PowerShell
$env:GEMINI_API_KEY = "your_gemini_api_key_here"
$env:GROQ_API_KEY = "your_groq_api_key_here"
# Linux/Mac
export GEMINI_API_KEY="your_gemini_api_key_here"
export GROQ_API_KEY="your_groq_api_key_here"π How to get API Keys (Click to expand)
- Go to Google AI Studio
- Sign in with your Google account
- Click "Create API Key"
- Copy and save the key
- Go to Groq Console
- Create a free account
- Generate a new API key
- Copy and save the key
cd app
uvicorn main:app --reloadNavigate to http://127.0.0.1:8000
Input job details and receive an AI-crafted cover letter tailored to your experience.

Practice with role-specific questions generated from YOUR resume.

| Role | Technical Focus |
|---|---|
| π₯οΈ Frontend Developer | React, JavaScript, CSS, TypeScript |
| βοΈ Backend Developer | Python, Java, APIs, Databases |
| π§ Full Stack Developer | End-to-end web development |
| π Data Analyst | SQL, Python, Visualization, Statistics |
| π€ Machine Learning Engineer | TensorFlow, PyTorch, MLOps |
| π DevOps Engineer | Docker, Kubernetes, CI/CD |
| π± Product Manager | Strategy, Roadmapping, Agile |
| π¨ UX Designer | Figma, User Research, Prototyping |
- Push your code to GitHub
- Go to render.com and create account
- Click New β Web Service
- Connect your GitHub repository
- Configure:
- Build Command:
pip install -r requirements.txt - Start Command:
cd app && uvicorn main:app --host 0.0.0.0 --port $PORT
- Build Command:
- Add environment variables:
GEMINI_API_KEYGROQ_API_KEY
- Click Deploy
FROM python:3.12-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY app/ ./app/
WORKDIR /app/app
EXPOSE 8000
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]docker build -t career-copilot .
docker run -p 8000:8000 \
-e GEMINI_API_KEY=your_key \
-e GROQ_API_KEY=your_key \
career-copilotCareer-Copilot-AI/
βββ app/
β βββ main.py # FastAPI application & routes
β βββ agent.py # Gemini agentic analysis loop
β βββ prompts.py # LLM prompt templates
β βββ resume_parser.py # PDF upload handling
β βββ resume_extractor.py # Structured data extraction
β βββ llama_analyzer.py # LLaMA + BGE + ChromaDB integration
β βββ cover_letter.py # Cover letter generation
β βββ interview_prep.py # Interview questions database
β βββ resume_analyzer.py # LLM interview question generation
β βββ job_search.py # Job platform URLs & tips
β βββ youtube_search.py # Learning video recommendations
β βββ sheets_api.py # Google Sheets OAuth & export
β βββ sheets_export.py # TSV data formatting
β βββ pdf_generator.py # Cover letter PDF creation
β βββ templates/ # Jinja2 HTML templates
β β βββ index.html # Home page
β β βββ result.html # Analysis results
β β βββ cover_letter.html
β β βββ interview.html
β β βββ jobs.html
β βββ static/ # CSS, JS, images
βββ requirements.txt # Python dependencies
βββ render.yaml # Render deployment config
βββ Procfile # Heroku/Render process file
βββ README.md
| Variable | Required | Description |
|---|---|---|
GEMINI_API_KEY |
Yes | Google Gemini API key for resume analysis |
GROQ_API_KEY |
Yes | Groq API key for LLaMA 3.1 access |
GOOGLE_CLIENT_ID |
Optional | For Google Sheets export |
GOOGLE_CLIENT_SECRET |
Optional | For Google Sheets export |
If API keys are unavailable or quota is exceeded, the app automatically switches to demo mode with keyword-based analysis. This ensures the application remains functional for demonstration purposes.
Contributions are welcome! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Google for Gemini AI and Google Cloud APIs
- Meta for LLaMA 3.1 open-source model
- Groq for lightning-fast LLaMA inference
- Hugging Face for Sentence Transformers and BGE embeddings
- ChromaDB team for the excellent vector database
Built with β€οΈ for job seekers everywhere
Star β this repo if you find it helpful!