An intelligent job portal built with Python Flask that uses AI to match job seekers with suitable job opportunities based on their skills and experience.
- User Registration & Profiles: Create detailed profiles with skills, experience, and education
- AI-Powered Job Recommendations: Get personalized job suggestions based on skill matching
- Job Browsing: Search and filter through available job opportunities
- Employer Dashboard: Post jobs and manage listings
- Skills-Based Matching: Uses TF-IDF vectorization and cosine similarity for intelligent recommendations
- Backend: Python Flask
- Database: SQLite with SQLAlchemy ORM
- Frontend: HTML5, CSS3, Bootstrap 5
- AI/ML: scikit-learn, NLTK, NumPy
- Authentication: Flask sessions with password hashing
- Python 3.7 or higher
- pip (Python package installer)
-
Install Dependencies
pip install -r requirements.txt
-
Run the Application
python app.py
The application will be available at http://localhost:5000
- Register and create a detailed profile with your skills and experience
- Login to view AI-recommended jobs with match percentages
- Browse all available job opportunities
- Contact employers directly using provided contact information
- Use "Employer Login" to access the employer dashboard
- Post detailed job listings with requirements and descriptions
- Manage your posted jobs and view statistics
The AI system works by:
- Converting job descriptions and user skills into numerical vectors using TF-IDF
- Using cosine similarity to find the best matches
- Providing percentage-based compatibility scores
- Ranking recommendations by relevance
GET /: Home pageGET/POST /register: User registrationGET/POST /login: User loginGET/POST /employer_login: Employer loginGET /dashboard: Job seeker dashboard with recommendationsGET /employer_dashboard: Employer dashboardGET/POST /post_job: Job posting formGET /jobs: Browse all jobsGET /api/recommendations/<user_id>: API for job recommendations
- Password hashing using Werkzeug
- Session management
- SQL injection protection via SQLAlchemy
- Input validation and sanitization
This project is licensed under the MIT License.