Up (elevation) + Nava (new)
Upnava is an AI-powered career analysis platform that helps professionals identify skill gaps and create personalized learning paths to compete with the top 1% in the job market.
- Resume Analysis: OCR-powered resume parsing and skill extraction
- Market Intelligence: Real-time comparison with top market demands
- Skill Gap Detection: Identifies missing skills for elite positions
- GitHub Portfolio Analysis: Evaluates code quality and project portfolio
- Personalized Learning Plans: Custom roadmaps with prioritized skills
- Career Recommendations: Actionable insights for career growth
The system uses a multi-agent architecture powered by LangChain and LangGraph:
User Upload → OCR Agent → Resume Parser → Skills Extractor
↓
Market Analyzer Agent
↓
Gap Detector Agent
↓
GitHub Analyzer Agent
↓
Learning Plan Generator
↓
Personalized Recommendations
- Backend: FastAPI, LangChain, LangGraph
- AI/ML: Google Gemini, LangChain Agents
- Frontend: HTML, CSS, JavaScript
- OCR: Pytesseract, PyPDF2
- GitHub Integration: PyGithub
- Clone the repository:
git clone https://github.com/yourusername/upnava.git
cd upnava- Install dependencies:
pip install -r requirements.txt- Set up environment variables:
cp .env.example .envEdit .env and add your API keys:
GOOGLE_API_KEY: Your Google Gemini API keyGITHUB_TOKEN: GitHub personal access token (optional)
- Run the application:
cd backend
python main.py- Open your browser and navigate to:
http://localhost:8000
- Upload Resume: Upload your resume in PDF or text format
- GitHub URL (Optional): Provide your GitHub profile URL
- Analyze: Click "Analyze My Profile" to start the analysis
- Review Results: Get detailed insights including:
- Current skill assessment
- Market gap analysis
- GitHub portfolio feedback
- Personalized learning plan
- Career recommendations
GET /: Serve frontend applicationPOST /api/analyze: Analyze resume and GitHub profilePOST /api/upload-resume: Upload resume fileGET /api/sample-analysis: Get sample analysis resultsGET /health: Health check endpoint
upnava/
├── backend/
│ ├── agents/
│ │ ├── base_agent.py
│ │ ├── resume_parser_agent.py
│ │ ├── skills_extractor_agent.py
│ │ ├── market_analyzer_agent.py
│ │ ├── gap_detector_agent.py
│ │ └── github_analyzer_agent.py
│ ├── models/
│ │ └── schemas.py
│ ├── orchestrator.py
│ └── main.py
├── frontend/
│ ├── index.html
│ ├── css/
│ │ └── styles.css
│ └── js/
│ └── app.js
├── static/
│ └── uploads/
├── requirements.txt
├── .env.example
└── README.md
Extracts text from PDF/images using OCR and structures resume data.
Identifies technical and soft skills, experience level, and certifications.
Analyzes current job market trends and top 1% skill requirements.
Identifies missing skills and creates priority-based improvement areas.
Evaluates GitHub repositories for code quality and best practices.
LangGraph-based workflow orchestrator that manages agent interactions and memory.
- Curated video lectures from top instructors
- AI-generated study materials
- Real-world project templates
- Weekly progress tracking
- 1-on-1 AI mentorship
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License.
For issues and questions, please open an issue on GitHub.
- Built with LangChain and LangGraph
- Powered by Google Gemini
- FastAPI for backend services
