Your AI-powered personalized learning assistant to extract skills from text or resume, identify gaps, and generate tailored roadmaps.
- 🔍 Skill Extraction: Extracts technical skills from resume text or uploaded PDFs.
- 🎯 Skill Gap Analysis: Compares your skills with required skills for your target role.
- 🗺️ Personalized Roadmaps: Recommends learning resources for missing skills.
- 📄 PDF Upload Support: Upload resume in PDF format for automatic parsing.
- ⚡ Powered by FastAPI backend and React frontend.
- Frontend: React.js, TailwindCSS
- Backend: FastAPI
- PDF Parsing:
pdfjs-dist - Skill Matching Logic: Static skill-role mapping (can be replaced by API/LLM later)
skillsage/
│
├── client/ # React frontend
├── api.py # FastAPI backend entry
├── skill\_data.py # Static skill-role mapping
└── ...
- Python 3.9+
- Node.js + npm
pipenvorvenv(recommended)
# Navigate to project root
cd skillsage
# Create and activate virtual environment
python -m venv venv
source venv/bin/activate # Or venv\Scripts\activate on Windows
# Install dependencies
pip install fastapi uvicorn pydantic python-multipart
# Run FastAPI server
uvicorn api:app --reloadcd client
npm install
npm startThe frontend runs on http://localhost:3000, backend on http://localhost:8000.
- Click “Upload PDF”
- Automatically extracts text and identifies skills
- Frontend Developer
- Backend Developer
- Data Scientist
- Machine Learning Engineer
- DevOps Engineer
See
skill_data.pyto customize skill-role mappings.
- Replace static extractor with spaCy or LLM
- Use live APIs for role-based skills (LinkedIn/RapidAPI)
- Add authentication for user profiles
- MongoDB integration for progress tracking
PRs and suggestions welcome! Please open an issue for bugs or enhancements.
MIT License. See LICENSE file.
Created by Shrey Bishnoi – feel free to reach out!

