Skip to content

Krishiv1611/careerPilot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

45 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ CareerPilot AI: The Autonomous Career Orchestration Platform

Live Demo License: MIT Python React FastAPI Docker


CareerPilot AI is a comprehensive, AI-powered career acceleration ecosystem designed to autonomously navigate the complexities of the modern job market. By fusing Generative AI, Agentic Workflows, and Deep Semantic Search, it transforms the passive process of job hunting into a proactive, data-driven strategy.

This platform does not just "search" for jobs; it understands your career trajectory, aligns opportunities with your unique skill vector, and engineers your application materials to maximize conversion rates.


🌟 Key Features

🧠 Cognitive Core & AI Capabilities

CareerPilot AI is built upon a sophisticated Multi-Agent System (MAS) architecture, where specialized AI agents collaborate to execute complex tasks:

1. Cognitive Resume Parsing Agent

  • Function: Ingests unstructured PDF resumes and converts them into structured, semantic data.
  • AI Tech: Utilizes Natural Language Processing (NLP) to identify and categorize skills, experience, and educational background with high fidelity.
  • Outcome: A digital twin of your professional profile ready for deep analysis.

2. Predictive ATS Scoring Engine

  • Function: Simulates corporate Applicant Tracking Systems (ATS) to audit your resume.
  • AI Tech: Deploys Generative AI to evaluate formatting, keyword density, and structural integrity against industry standards.
  • Outcome: A granular score (0-100) and a strategic feedback report to immunize your resume against automated rejection.

3. Instant Resume Categorization Engine

  • Function: Automatically segments your profile into professional domains.
  • AI Tech: Deploys a Trained Machine Learning Classifier (TF-IDF + Random Forest) to predict your primary role from 25+ career categories (e.g., Data Science, DevOps, Java Development).
  • Outcome: Ensures your profile is matched against the correct job market segment.

4. Semantic Job Discovery Agent

  • Function: Scours internal databases and the live web for high-potential opportunities.
  • AI Tech: Leverages Neural Search and Vector Embeddings to go beyond keyword matching, finding jobs that semantically align with your core competencies.
  • Integration: Seamlessly connects with SerpAPI for real-time access to global job listings (Google Jobs).

5. Intelligent Query Manager

  • Function: Intercepts and optimizes user intent before searching.
  • AI Tech: Uses Chain-of-Thought (CoT) reasoning to transform vague inputs into precise boolean search strings, ensuring high-relevance results.
  • Outcome: Drastically reduces noise in job search results.

6. Deep Fit Analysis Agent

  • Function: The "Brain" of the operation. It reads job descriptions like a hiring manager. Supports both auto-matched jobs and Manual Analysis (pasting your own JD).
  • AI Tech: Uses Google Gemini 2.5 Flash to perform a multi-dimensional gap analysis between your profile and the target role.
  • Outcome: A "Fit Score" and a detailed diagnostic report highlighting strengths, weaknesses, and critical missing skills.

7. Generative Content Architect

  • Function: Autonomously drafts hyper-personalized application assets.
  • AI Tech:
    • Resume Tailoring: Reconstructs your resume to emphasize the specific skills and experiences demanded by the target job.
    • Cover Letter Synthesis: Composes persuasive, context-aware cover letters that weave your narrative into the company's mission.

8. Personalized Career Roadmap Agent

  • Function: Generates a bespoke learning and preparation strategy for a specific target role.
  • AI Tech: Analyzes the gap between your current profile and the job requirements to create a step-by-step action plan.
  • Outcome: A structured roadmap containing milestones, resources, and timelines to bridge skill gaps and land the job.

πŸ—οΈ Technical Architecture

The system is engineered as a robust, scalable, and containerized full-stack application.

Backend: The Neural Control Plane

  • Framework: FastAPI (Python) for high-performance, asynchronous API handling.
  • Orchestration: LangGraph manages the stateful, cyclic graphs of the agentic workflows.
  • Intelligence: Google Gemini 2.5 Flash (via langchain-google-genai) provides the reasoning and generative capabilities.
  • Memory: PostgreSQL (via SQLAlchemy) ensures ACID-compliant persistence of user data, resumes, and job history.
  • Vector Engine: ChromaDB powers the semantic retrieval system, storing embeddings of resumes and job descriptions for similarity search.
  • Security: OAuth2 with JWT (JSON Web Tokens) and Argon2 password hashing.

Frontend: The Command Center

  • Framework: React.js 19 (Vite) delivers a lightning-fast, reactive user interface.
  • Design System: Shadcn/UI and Tailwind CSS 4 provide a premium, accessible, and responsive aesthetic.
  • Routing: React Router DOM 7 for seamless navigation.
  • State Management: React Hooks manage the complex state of real-time AI interactions.

Infrastructure

  • Containerization: Docker encapsulates the entire stack, ensuring consistency across development and production environments.
  • Orchestration: Docker Compose manages the multi-container lifecycle.

πŸ“‚ Project Structure

careerPilot/
β”œβ”€β”€ backend/                        # Python FastAPI Backend
β”‚   β”œβ”€β”€ agents/                     # The "Brain" - AI Agent Definitions
β”‚   β”‚   β”œβ”€β”€ graph.py                # LangGraph workflow definition
β”‚   β”‚   β”œβ”€β”€ job_search_agent.py     # Internal DB search logic
β”‚   β”‚   β”œβ”€β”€ fit_score_agent.py      # Gemini-powered fit analysis
β”‚   β”‚   β”œβ”€β”€ roadmap_agent.py        # Roadmap generation logic
β”‚   β”‚   └── ... (other agents)
β”‚   β”œβ”€β”€ models/                     # Data Layer
β”‚   β”‚   β”œβ”€β”€ database.py             # DB connection & session handling
β”‚   β”‚   β”œβ”€β”€ schemas.py              # Pydantic models for API validation
β”‚   β”‚   β”œβ”€β”€ user_model.py           # SQLAlchemy ORM models
β”‚   β”‚   └── roadmap_model.py        # Roadmap data models
β”‚   β”œβ”€β”€ routers/                    # API Interface
β”‚   β”‚   β”œβ”€β”€ careerpilot_router.py   # Main endpoint for AI workflows
β”‚   β”‚   β”œβ”€β”€ resume_router.py        # Resume management endpoints
β”‚   β”‚   β”œβ”€β”€ roadmap_router.py       # Roadmap endpoints
β”‚   β”‚   └── auth_router.py          # Authentication endpoints
β”‚   β”œβ”€β”€ services/                   # Business Logic & Utilities
β”‚   β”‚   β”œβ”€β”€ ats_service.py          # ATS scoring logic
β”‚   β”‚   β”œβ”€β”€ embedding.py            # Vector embedding service
β”‚   β”‚   └── pdf_reader.py           # PDF extraction utility
β”‚   β”œβ”€β”€ data/                       # Local storage (Git-ignored)
β”‚   β”‚   β”œβ”€β”€ resumes/                # Uploaded PDF files
β”‚   β”‚   └── vectorstore/            # ChromaDB persistence
β”‚   β”œβ”€β”€ main.py                     # Application entry point
β”‚   β”œβ”€β”€ requirements.txt            # Python dependencies
β”‚   └── Dockerfile                  # Backend container definition
β”‚
β”œβ”€β”€ frontend/                       # React Frontend
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ components/             # UI Building Blocks
β”‚   β”‚   β”‚   β”œβ”€β”€ layout/             # Navbar, Layout wrappers
β”‚   β”‚   β”‚   β”œβ”€β”€ ui/                 # Shadcn/UI components
β”‚   β”‚   β”‚   └── settings/           # Configuration modals
β”‚   β”‚   β”œβ”€β”€ pages/                  # Main Views
β”‚   β”‚   β”‚   β”œβ”€β”€ CareerPilot.jsx     # The AI Dashboard
β”‚   β”‚   β”‚   β”œβ”€β”€ UploadResume.jsx    # Resume ingestion interface
β”‚   β”‚   β”‚   └── Roadmap.jsx         # Roadmap visualization
β”‚   β”‚   β”œβ”€β”€ services/               # API Integration
β”‚   β”‚   β”‚   └── api.js              # Axios configuration
β”‚   β”‚   β”œβ”€β”€ App.jsx                 # Main Router
β”‚   β”‚   └── main.jsx                # Entry point
β”‚   β”œβ”€β”€ public/                     # Static assets
β”‚   β”œβ”€β”€ index.html                  # HTML template
β”‚   β”œβ”€β”€ package.json                # Node.js dependencies
β”‚   β”œβ”€β”€ tailwind.config.js          # Styling configuration
β”‚   └── Dockerfile                  # Frontend container definition
β”‚
β”œβ”€β”€ docker-compose.yml              # Multi-container orchestration config
β”œβ”€β”€ .env                            # Environment variables (API Keys)
└── README.md                       # This documentation

πŸš€ Installation & Deployment Guide

Prerequisites

  • Docker Desktop (Running)
  • Git (For version control)
  • PostgreSQL Database: You need a running PostgreSQL instance (local or cloud).
  • API Keys:
    • Google Gemini API Key: Essential for all AI features. Get it here.
    • SerpAPI Key: Optional, for live Google Jobs search. Get it here.

βš™οΈ Configuration (.env)

Create a .env file in the root directory with the following variables:

# Database Configuration (Required)
DATABASE_URL=postgresql://user:password@host:port/dbname

# Security (Required)
SECRET_KEY=your_super_secret_random_string

# CORS Configuration (Optional)
CORS_ORIGINS=http://localhost:5173,http://localhost:3000

# AI Keys (Can also be set via UI)
GOOGLE_API_KEY=your_gemini_key
SERPAPI_API_KEY=your_serpapi_key
TAVILY_API_KEY=your_tavily_key

Option 1: Docker Deployment (Recommended)

  1. Clone the Repository

    git clone https://github.com/Krishiv1611/careerPilot.git
    cd careerPilot
  2. Launch with Docker Compose

    docker-compose up --build -d
  3. Access the Platform

Option 2: Local Development (Manual)

Backend:

  1. Navigate to backend/.
  2. Create a virtual environment: python -m venv venv
  3. Activate it: source venv/bin/activate (or venv\Scripts\activate on Windows).
  4. Install dependencies: pip install -r requirements.txt
  5. Run the server: uvicorn main:app --reload

Frontend:

  1. Navigate to frontend/.
  2. Install dependencies: npm install
  3. Start the dev server: npm run dev

πŸ“‘ API Documentation

The backend exposes a comprehensive REST API documented via Swagger UI at /docs.

Key Endpoints

πŸ” Authentication

  • POST /auth/register: Create a new user account.
  • POST /auth/login: Authenticate and receive a JWT access token.

πŸ“„ Resumes

  • POST /resume/upload: Upload a PDF resume. Triggers parsing and initial analysis.
  • GET /resume/all: Retrieve all resumes associated with the current user.
  • GET /resume/{id}: Get detailed data for a specific resume.
  • POST /resume/download-pdf: Generate and download a PDF version of the improved resume.

πŸ’Ό Jobs

  • POST /jobs/add: Manually add a job to the database.
  • GET /jobs/all: List all available jobs.
  • POST /jobs/reindex-all: Re-index all jobs into the vector store for semantic search.

πŸ—ΊοΈ Roadmap

  • POST /roadmap/create: Generate a personalized career roadmap for a specific job.
  • GET /roadmap/{job_id}: Retrieve an existing roadmap for a job.

🧠 CareerPilot (AI Agents)

  • POST /careerpilot/analyze: The Core Endpoint. Triggers the multi-agent workflow:
    • Input: Resume ID, Job ID (optional), Search Query (optional).
    • Process: Search -> Match -> Gap Analysis -> Tailoring.
    • Output: Fit Score, Missing Skills, Improved Resume, Cover Letter.
  • POST /manual-analysis/analyze: Direct Analysis.
    • Input: Manual JD Text + Resume ID.
    • Process: Skips search, directly analyzes the provided text against the resume.

πŸ“– User Manual: Navigating the AI Workflow

Phase 1: Configuration

  1. Open the application (or visit the Live Demo).
  2. Click the "Configure Keys" button in the top-right corner.
  3. Input your Google Gemini API Key.
  4. (Optional) Input your SerpAPI Key to enable live web searching.
  5. Save. Your keys are encrypted and stored locally in your browser.

Phase 2: Ingestion & Audit

  1. Go to "Upload Resume".
  2. Drag and drop your PDF resume.
  3. Watch the AI work: It will instantly parse your document, extract your skill DNA, and run an ATS audit.
  4. Review the ATS Score and feedback.

Phase 3: Strategic Discovery

  1. Navigate to "CareerPilot AI" (Dashboard).
  2. Select your uploaded resume from the dropdown.
  3. Auto-Match: Leave the search bar empty and click "Find Jobs". The AI will infer your ideal roles based on your extracted skills.
  4. Targeted Search: Enter a specific role (e.g., "Senior React Developer") to narrow the scope.

Phase 4: Deep Analysis & Execution

  1. Browse the intelligent job cards.
  2. Click "Analyze Match" on a role that interests you.
  3. The Fit Analysis Agent will perform a deep dive:
    • Fit Score: A percentage indicating your alignment.
    • Gap Analysis: Identifies critical missing skills.
    • Tailored Resume: Generates a new version of your resume optimized for this specific job.
    • Cover Letter: Drafts a compelling narrative for your application.
    • Roadmap: View a step-by-step plan to acquire the missing skills.
  4. Use these AI-generated assets to apply with confidence.

Phase 5: Manual Analysis

  1. Have a specific job description from another site?
  2. Go to the "Analyze Match" section.
  3. Paste the Job Description text directly.
  4. The AI will run the full suite of analysis (Fit Score, Resume Tailoring) on your pasted text.

πŸ”§ Troubleshooting

  • "Connection Refused": Ensure the backend container is running. Check logs with docker logs careerpilot-backend.
  • "Database Error": Ensure your DATABASE_URL is correct and the PostgreSQL server is running.
  • "Google API Key Missing": The AI agents cannot function without fuel. Configure your key in the settings modal.
  • "Search Query Missing": This has been resolved in the latest patch by optimizing the graph execution order.

🀝 Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/AmazingFeature).
  3. Commit your changes (git commit -m 'Add some AmazingFeature').
  4. Push to the branch (git push origin feature/AmazingFeature).
  5. Open a Pull Request.

πŸ“„ License

Distributed under the MIT License. See LICENSE for more information.


Powered by Advanced Agentic AI. Engineered for Career Success.

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors