AI-Powered Career Intelligence Platform for Freshers & Entry-Level Engineers
Features β’ Architecture β’ Installation β’ Demo β’ Documentation
HireFlow AI is an intelligent career platform that leverages artificial intelligence to help freshers and entry-level software engineers navigate their job search journey. The platform provides comprehensive tools for resume analysis, job matching, skill gap identification, career coaching, and interview preparation.
Fresh graduates and entry-level developers face significant challenges:
- Resume Optimization: Difficulty tailoring resumes to specific job requirements
- Skill Gap Analysis: Uncertainty about which skills to prioritize for target roles
- Job Discovery: Overwhelming number of job platforms with inconsistent information
- Career Guidance: Lack of personalized career advice and interview preparation
- Application Tracking: Difficulty managing multiple job applications efficiently
HireFlow AI addresses these challenges through:
- AI-Powered Resume Parsing: Extract and analyze resume data using Google Gemini API
- Intelligent Job Matching: Match resumes against job descriptions with weighted scoring
- Skill Gap Analysis: Identify missing skills with learning recommendations
- Career Coaching: AI-driven personalized career guidance
- Job Aggregation: Scrape jobs from multiple platforms (LinkedIn, Internshala, Naukri, etc.)
- Application Tracking: Manage job applications with status tracking
- Smart Parsing: Extract structured data from PDF resumes using AI
- ATS Optimization: Improve resume compatibility with applicant tracking systems
- Skill Extraction: Automatically identify and categorize technical and soft skills
- Resume Scoring: Get actionable feedback on resume quality
- Intelligent Matching: Compare resume skills against job requirements
- Weighted Scoring: Priority-based skill matching (High/Medium/Low)
- Category Analysis: Break down matches by skill categories (Frontend, Backend, DevOps, etc.)
- Gap Analysis: Identify missing skills with learning recommendations
- Multi-Platform Aggregation: Scrape jobs from LinkedIn, Internshala, Naukri, Glassdoor, Wellfound
- Smart Filtering: Filter by location, salary, experience, work mode
- Deduplication: Remove duplicate job postings automatically
- Real-time Updates: Fresh job data with regular scraping
- AI Career Assistant: Get personalized career advice and guidance
- Interactive Chat: AI-powered career Q&A interface
- Career Fit Analysis: Match profile against various career paths
- Interview Preparation: Generate role-specific interview questions
- Application Tracking: Monitor job application status and progress
- Skill Analytics: Visualize skill distribution and growth
- Learning Roadmaps: Personalized learning plans with milestones
- Performance Metrics: Track career readiness scores
- Application Workflow: End-to-end application management
- Alert System: Notifications for new jobs and application updates
- Export Functionality: Generate reports and summaries
- Responsive Design: Clean, intuitive user interface
graph TB
A[User Interface - Streamlit] --> B[API Layer - FastAPI]
A --> C[Database - SQLite]
B --> D[Service Layer]
D --> E[AI Agents]
D --> F[Job Services]
D --> G[Matcher Engine]
E --> H[Gemini API]
F --> I[Job Scrapers]
I --> J[External Job Platforms]
G --> K[Skill Categorizer]
G --> L[Ranking Engine]
C --> M[ORM - SQLAlchemy]
| Component | Technology | Purpose |
|---|---|---|
| Frontend | Streamlit | Interactive web interface |
| Backend API | FastAPI | RESTful API endpoints |
| Database | SQLite + SQLAlchemy | Data persistence and ORM |
| AI Engine | Google Gemini API | Resume parsing and career coaching |
| Job Scraping | Selenium + BeautifulSoup | Multi-platform job aggregation |
| Matching Engine | Custom Algorithm | Weighted skill matching |
| Visualization | Plotly | Interactive charts and graphs |
- Python 3.12: Modern Python with type hints and async support
- Streamlit 1.32+: Rapid web application development
- FastAPI: High-performance API framework
- SQLAlchemy 2.0: Modern Python SQL toolkit and ORM
- Google Gemini API: Advanced AI for resume parsing and coaching
- FuzzyWuzzy/RapidFuzz: String matching and similarity scoring
- Custom Matching Algorithm: Weighted skill matching with priority levels
- Pandas: Data manipulation and analysis
- PyMuPDF: PDF parsing for resume extraction
- Pydantic: Data validation and settings management
- Selenium: Browser automation for dynamic content
- BeautifulSoup4: HTML parsing and data extraction
- Requests: HTTP library for web scraping
- Plotly: Interactive charts and graphs
- Streamlit Components: Custom UI components
- python-dotenv: Environment variable management
- Logging: Comprehensive logging system
- Type Hints: Full type annotation coverage
- Python 3.12 or higher
- pip (Python package manager)
- Google Gemini API Key
git clone https://github.com/Jayesh01323/HireFlow.git
cd HireFlowpython -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activatepip install -r requirements.txtcp .env.example .envEdit .env and add your API key:
GEMINI_API_KEY=your_gemini_api_key_here
DATABASE_URL=sqlite:///data/hireflow.dbpython -c "from src.database import init_db; init_db()"streamlit run app.pyThe application will be available at http://localhost:8501
- Navigate to Resume Parser page
- Upload your PDF resume
- AI will extract and structure your data
- Review parsed information and skills
- Go to Job Discovery page
- Search for jobs by title, location, or skills
- Apply filters (remote, salary, experience)
- Save interesting jobs to your list
- Visit Job Matcher page
- Select your parsed resume
- Paste job description
- Get detailed match analysis with skill gaps
- Use Career Assistant for personalized advice
- Try interactive AI chat for career Q&A
- Check Career Fit for role compatibility
- Use Application Tracker to manage applications
- Update status (Saved, Applied, Interview, Offer, Rejected)
- Add notes and follow-up reminders
- Check Analytics Dashboard for insights
- Monitor skill distribution and growth
- Track application success rates
Central hub for navigating all features
AI-powered resume extraction and analysis
Intelligent skill matching with gap analysis
Comprehensive career analytics and insights
πΈ Note: Screenshots will be added in Phase 6. For now, placeholders are shown.
hireflow-ai/
βββ app.py # Main Streamlit entry point
βββ requirements.txt # Python dependencies
βββ .env.example # Environment variable template
βββ .gitignore # Git ignore rules
βββ LICENSE # MIT License
βββ README.md # This file
βββ Dockerfile # Container build
βββ docker-compose.yml # Container orchestration
β
βββ data/ # Database and uploads
β βββ .gitkeep # Ensure directory exists
β
βββ docs/ # Documentation
β βββ architecture.md # System architecture
β βββ installation.md # Installation guide
β βββ api-reference.md # API documentation
β βββ user-guide.md # User guide
β βββ developer-guide.md # Developer guide
β βββ roadmap.md # Project roadmap
β βββ deployment/ # Deployment guides
β β βββ railway.md
β β βββ render.md
β β βββ streamlit.md
β βββ audits/ # Audit reports
β β βββ AUDIT_REPORT.md
β β βββ PRODUCT_AUDIT_REPORT.md
β βββ project/ # Project management docs
β β βββ CHANGELOG.md
β β βββ VERSIONING.md
β β βββ RELEASE_NOTES.md
β β βββ elevator-pitch.md
β β βββ linkedin-content.md
β β βββ resume-projects.md
β βββ security/ # Security documentation
β β βββ SECURITY.md
β βββ contributing/ # Community guidelines
β βββ CONTRIBUTING.md
β βββ CODE_OF_CONDUCT.md
β
βββ pages/ # Streamlit multi-page modules
β βββ Resume_Parser.py
β βββ Job_Matcher.py
β βββ Job_Discovery.py
β βββ Skill_Gap.py
β βββ Career_Assistant.py
β βββ Application_Tracker.py
β βββ Analytics_Dashboard.py
β βββ Learning_Dashboard.py
β
βββ src/ # Core application logic
β βββ agents/ # AI agents
β βββ ai/ # AI integration
β βββ api/ # API endpoints
β βββ database/ # Database layer
β βββ jobs/ # Job processing
β βββ services/ # Business logic
β βββ utils/ # Utilities
β βββ database.py
β βββ matcher.py
β βββ parser.py
β βββ gemini.py
β βββ utils.py
β
βββ tests/ # Test suite
β βββ test_job_connectors.py
β βββ test_phase4_services.py
β βββ test_job_discovery_engine.py
β βββ debug_job_discovery.py
β βββ validation_test_matcher.py
β
βββ reports/ # Generated reports
β βββ validation_report.json
β
βββ resume-analyzer/ # Frontend app (Next.js)
βββ .gitignore
βββ package.json
βββ next.config.js
βββ src/
GET /api/jobs- List all jobs with filtersGET /api/jobs/{id}- Get job detailsPOST /api/jobs/search- Search jobsGET /api/jobs/sources- List job sources
POST /api/resume/upload- Upload resumeGET /api/resume/{id}- Get resume detailsPOST /api/resume/parse- Parse resume text
GET /api/alerts- Get user alertsPOST /api/alerts- Create alertPUT /api/alerts/{id}/read- Mark as read
GET /api/applications- List applicationsPOST /api/applications- Create applicationPUT /api/applications/{id}- Update application status
Detailed API documentation is available in docs/api-reference.md
- User authentication and authorization
- Email notifications for job alerts
- Export to PDF/Excel functionality
- Mobile-responsive design improvements
- Advanced filtering options
- Real-time job updates with WebSocket
- Integration with LinkedIn API
- Collaborative features for teams
- Advanced analytics with ML insights
- Performance optimization and caching
- Mobile app (React Native)
- Premium subscription tier
- Company profiles and reviews
- Salary estimation tool
- Video interview preparation
- AI-powered cover letter generation
- Resume templates and builder
- Community features and forums
- Integration with ATS systems
- White-label solution for companies
We welcome contributions from the community! Please read our CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow PEP 8 style guidelines
- Add type hints to all functions
- Write tests for new features
- Update documentation as needed
- Keep commits focused and atomic
This project is licensed under the MIT License - see the LICENSE file for details.
- β Free to use for personal and commercial projects
- β Free to modify and distribute
- β No warranty or liability
- β Must include license and copyright notice
Jayesh
- GitHub: @Jayesh01323
- LinkedIn: Jayesh
- Email: jayesh@example.com
- Google Gemini API for AI capabilities
- Streamlit team for the amazing framework
- Open source community for various libraries
- Total Files: 70+ Python files
- Lines of Code: 15,000+
- Test Coverage: Expanding
- API Endpoints: 15+
- Job Sources: 6 platforms
- Skill Categories: 12 categories
- Supported Formats: PDF, JSON
If you find this project helpful, please consider:
- β Starring the repository on GitHub
- π Reporting bugs via Issues
- π‘ Suggesting features via Discussions
- π’ Sharing with your network
For questions, support, or collaboration:
- Open an Issue
- Email: jayesh@example.com
- LinkedIn: Jayesh
Built with β€οΈ for the developer community