Skip to content

KanchanP333/PathFinder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PathFinder 🎯

Intelligent Job-to-Roadmap Generator - Transform your resume and job description into a personalized 30-day learning roadmap.

Version License Status

🚀 Overview

PathFinder is a modern web application that analyzes job postings against your resume to identify skill gaps and generates personalized learning roadmaps. Perfect for career changers, skill upgraders, and job aspirants.

Key Features

  • 📄 Resume & Job Analysis - Upload resume (PDF/TXT) and paste job description
  • 📊 Match Scoring - Get percentage match and identify missing skills
  • 🎯 AI-Powered Skill Extraction - Uses OpenAI to intelligently extract and categorize skills
  • 📅 30-Day Roadmap Generation - Creates structured learning plans with daily tasks
  • ⚙️ Personalization - Customize roadmaps based on:
    • Daily time commitment (30-45 min, 1-2 hrs, 2-3 hrs)
    • Experience level (Beginner, Intermediate)
    • Study schedule (Weekdays, Weekends, or Both)
  • 🔄 Roadmap Comparison - Compare default vs. personalized learning paths
  • 📋 Progress Tracking - Mark completed days and monitor streaks
  • 🖨️ Print-Friendly - Export your roadmap for offline use

💻 Tech Stack

  • Frontend: React 19 + Next.js 16
  • Styling: Tailwind CSS 4 + PostCSS
  • PDF Processing: PDF.js 5
  • AI Engine: OpenAI API
  • Backend: Next.js API Routes

📋 Prerequisites

🛠️ Installation

  1. Clone the repository

    git clone <repository-url>
    cd PathFinder
  2. Install dependencies

    npm install
  3. Set up environment variables Create a .env.local file in the root directory:

    NEXT_PUBLIC_API_KEY=your_openai_api_key_here
  4. Start development server

    npm run dev
  5. Open in browser Navigate to http://localhost:3000

📖 Usage Guide

For End Users

Step 1: Upload & Analyze

  • Navigate to the home page
  • Upload your resume (PDF, TXT, DOC, or DOCX)
  • Paste the job description
  • Click "Analyze Job"

Step 2: View Results

  • See your job match percentage (0-100%)
  • Review identified missing skills
  • Analyze the match assessment

Step 3: Choose Your Path

Option A: Default Roadmap

  • Pre-made 30-day learning plan
  • Covers all missing skills systematically
  • Great for quick start

Option B: Personalized Roadmap

  • Select your daily time commitment
  • Choose your experience level
  • Pick your study schedule
  • System generates customized plan with:
    • Specific daily task lists
    • Time estimates per day
    • Intensity levels (Light, Normal, Deep Dive)
    • Strategic review and buffer days

Step 4: Track Progress

  • Click days to mark as complete
  • Build your learning streak
  • Compare roadmaps side-by-side
  • Print your plan for reference

For Developers

Project Structure

PathFinder/
├── app/                          # Next.js app directory
│   ├── api/
│   │   └── analyze/             # Job analysis endpoint
│   ├── page.jsx                 # Home page
│   ├── results/page.jsx         # Analysis results view
│   ├── personalize/page.jsx     # Personalization interface
│   ├── roadmap/page.jsx         # Roadmap display
│   └── roadmap/compare/page.jsx # Comparison view
├── components/                   # React components
│   ├── Button.jsx               # Reusable button
│   ├── JobInput.jsx             # Job description input
│   ├── ResumeUpload.jsx         # Resume file upload
│   ├── MatchScore.jsx           # Score visualization
│   ├── SkillCard.jsx            # Individual skill display
│   ├── LearningPlan.jsx         # 30-day calendar view
│   ├── LearningPreferences.jsx  # Personalization options
│   └── RoadmapTracker.jsx       # Progress & comparison tracker
├── lib/                          # Utility functions
│   ├── openai.js                # OpenAI API integration
│   ├── skillExtractor.js        # Skill extraction logic
│   ├── matchCalculator.js       # Match scoring logic
│   └── roadmapGenerator.js      # Roadmap generation logic
├── public/                       # Static assets
├── globals.css                  # Global styles
└── tailwind.config.js           # Tailwind configuration

Key Components

SkillExtractor - Intelligently extracts skills from resume and job description

import { extractSkillsFromResume } from "@/lib/skillExtractor";

const skills = await extractSkillsFromResume(resumeText);
// Returns: { technical: [...], soft: [...], tools: [...] }

MatchCalculator - Calculates job match percentage

import { calculateJobMatch } from "@/lib/matchCalculator";

const score = calculateJobMatch(resumeSkills, jobSkills);
// Returns: 0-100 percentage

RoadmapGenerator - Creates personalized 30-day plans

import { generatePersonalizedRoadmap } from "@/lib/roadmapGenerator";

const roadmap = generatePersonalizedRoadmap(skills, preferences);
// Returns: Day-by-day learning plan with tasks

🎨 Color Scheme

PathFinder features a bright, clean white theme with:

  • White backgrounds for clarity
  • Blue accent colors (rgb(37, 99, 235) - rgb(59, 130, 246))
  • Dark slate text for excellent readability
  • Light borders and subtle shadows
  • Status colors: Green (success), Red (warning), Blue (info)

🔧 Configuration

Environment Variables

Variable Description Required
NEXT_PUBLIC_API_KEY OpenAI API key Yes

OpenAI API Setup

  1. Sign up at platform.openai.com
  2. Navigate to API keys section
  3. Create new secret key
  4. Copy and paste into .env.local

📊 How It Works

Analysis Flow

  1. Resume Upload → PDF.js extracts text
  2. Skill Extraction → OpenAI identifies all skills
  3. Job Parsing → OpenAI analyzes job requirements
  4. Matching → Compares resume vs. job skills
  5. Roadmap Gen → Creates 30-day learning plan
  6. Display → Shows results with interactive UI

Personalization Algorithm

  • Time-aware distribution - Balances skill coverage based on available hours
  • Progressive difficulty - Starts easy, increases complexity
  • Strategic review - Includes buffer days every 7 days
  • Intensity optimization - Alternates between Light, Normal, and Deep Dive days
  • Priority-based - Focuses on high-priority missing skills first

🚦 Available Scripts

# Development server (http://localhost:3000)
npm run dev

# Build for production
npm run build

# Start production server
npm start

# Run tests
npm test

📚 Documentation

🤝 API Reference

/api/analyze - POST

Analyzes resume against job description and generates roadmap.

Request Body:

{
  "resume": "string (resume text)",
  "jobDescription": "string (job description text)"
}

Response:

{
  "matchPercentage": 85,
  "matchingSkills": ["Skill1", "Skill2"],
  "missingSkills": ["Skill3", "Skill4"],
  "roadmap": {
    "raw": "string (detailed roadmap)"
  }
}

🎓 Learning Features

30-Day Roadmap Includes

  • Daily breakdown of learning objectives
  • Time estimates for each day (based on personalization)
  • Specific tasks to complete
  • Intensity levels to manage difficulty
  • Skill tracking to see progress
  • Review days to reinforce learning

Progress Tracking Options

  • Mark completed days to build streaks
  • Compare default vs. personalized paths
  • View detailed day breakdowns
  • Print roadmap for offline reference
  • Export progress overview

🔐 Privacy & Security

  • Resume data processed locally in browser
  • Job descriptions never permanently stored
  • Analysis results kept in session storage
  • OpenAI API handles all NLP processing
  • No database of user information

🐛 Troubleshooting

API Key Issues

  • Verify API key in .env.local
  • Check OpenAI account has credits
  • Confirm key has API access enabled

Resume Upload Problems

  • Ensure file is PDF, TXT, DOC, or DOCX
  • File size under 10MB
  • Try extracting text from PDF if corrupted

Generation Timeouts

  • Increase OpenAI timeout in development
  • Check network connection
  • Verify OpenAI API is not rate-limited

📈 Performance

  • Load Time: ~2-3 seconds
  • Analysis Time: ~5-10 seconds (API dependent)
  • Roadmap Generation: ~3-5 seconds
  • PDF Processing: ~1-2 seconds

🎯 Future Enhancements

  • Real-time skill progress verification
  • Video tutorial integration
  • Community roadmap sharing
  • Mobile app version
  • Multi-language support
  • Integration with learning platforms (Udemy, Coursera, etc.)
  • Advanced analytics dashboard
  • Peer learning groups

📝 License

ISC License - See LICENSE file for details

👨‍💻 Development

Getting Help

  1. Check existing documentation in repo
  2. Review code examples in USAGE_EXAMPLES.md
  3. Check integration test scenarios

Contributing

  1. Create feature branch
  2. Make changes following code style
  3. Test thoroughly
  4. Submit pull request

🙌 Acknowledgments

  • OpenAI for powerful AI capabilities
  • Next.js for modern React framework
  • Tailwind CSS for utility-first styling
  • PDF.js for PDF processing
  • Framer Motion for smooth animations

📞 Support

For issues, questions, or suggestions:

  1. Check the documentation files
  2. Review existing issues
  3. Create a new issue with detailed description

Version: 1.0.0
Last Updated: February 2026
Status: Active Development

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors