RucRut is an advanced AI-powered recruitment system designed to enhance and streamline the hiring process for both job providers and candidates. The platform leverages cutting-edge Natural Language Processing (NLP) and AI models to generate tailored interview questions based on the candidate’s CV and job requirements, automatically evaluate their responses, and provide comprehensive feedback.
This system is built using Flask, SQLAlchemy, MongoDB, and Hugging Face's NLP models, with a focus on offering efficient, bias-reducing, and personalized recruitment experiences.
Click here to watch the video walkthrough
(This video explains how the application works)
- Dashboard: Manage job postings and track candidate applications in real-time.
- Job Posting Creation: Create and modify job postings with detailed specifications.
- AI-Generated Interview Questions: Automatically generate interview questions based on candidate CV and job description.
- Automatic Feedback and Scoring: Receive AI-driven feedback and score candidates based on their interview responses.
- Analytics and Reports: View candidate performance metrics through various graphs, such as age distribution, score comparisons, and top performers.
- Job Search and Application: Browse and apply for job postings in just a few clicks.
- AI-Powered Interviews: Experience tailored interview questions based on your CV and the specific job requirements.
- Immediate Feedback: Get real-time feedback on interview responses to improve performance.
To set up the RucRut application locally, follow these steps:
- Python 3.11+
- Flask 2.2.3
- MongoDB 4.7.0
- SQLAlchemy 2.0.8
-
Clone the repository:
git clone https://github.com/OmarNouih/SmartRecruit_LLM.git cd RucRut
-
Install required packages:
pip install -r requirements.txt
-
Set up environment variables:
- Ensure to configure your
.env
file with the necessary environment variables for the Flask application, MongoDB connection, and Hugging Face API credentials.
- Ensure to configure your
-
Initialize the database:
- Set up your SQLite database:
flask db upgrade
- Set up your SQLite database:
-
Run the Flask application:
flask run
The application will be available on
http://localhost:5000
. -
Access MongoDB:
- Ensure MongoDB is running, and it's properly configured in the
.env
file.
- Ensure MongoDB is running, and it's properly configured in the
- Sign up and Log in.
- Create Job Postings: Add jobs with specific titles, locations, descriptions, and other necessary information.
- Manage Applications: Review candidates’ CVs, interview responses, and scores.
- Track Data: Use the dashboard to view visual insights such as the top 3 candidates, score comparisons, and other analytics.
- Browse Jobs: Search and apply for jobs that match your skills.
- AI Interview: Participate in personalized interviews generated based on your CV.
- Get Feedback: Receive instant feedback and improve based on AI evaluations.
- Backend: Flask, SQLAlchemy, MongoDB
- Frontend: HTML5, CSS3, JavaScript
- AI Models: Hugging Face Transformers, Sentence Transformers
- PDF Parsing: PDFPlumber
We welcome contributions to improve the functionality of RucRut. If you'd like to contribute, please:
- Fork the repository.
- Create a new branch for your feature/bug fix.
- Submit a pull request.
This project is licensed under the 3DSF License.
For any inquiries, you can reach out to the developers: