HireHub is a comprehensive hiring portal built using the MERN stack (MongoDB, Express.js, React, Node.js). It provides a platform for job seekers to browse and apply for jobs, employers to manage job postings and candidate shortlisting, and admins to oversee the platform's operations.
Check the project structure here Project Structure
-
Frontend: React, Redux
-
Backend: Node.js, Express.js, Python
-
Storage: Firebase-Clous
-
Database: MongoDB
-
Authentication: JWT (JSON Web Tokens)
-
Styling: CSS, Bootstrap, Material UI
- Apply for Jobs: Browse job listings and apply directly.📄
- Receive Email Notifications: Get automatic email notifications on application status. 📧
- Coding Assessments: Complete integrated coding tests within the platform, with built-in code compilation and instant feedback. 💻
- Secure Link Management: Ensures data integrity and protection for coding assessments. 🔒
- Company Registration: Register your company and manage your profile.
- Manage Job Postings: Create, edit, and manage job listings through a user-friendly dashboard.
- Create Coding Assessments: Set up coding tests for candidates and define evaluation criteria.
- Assessment Results: Review detailed reports of coding tests and manage results effectively.
-
Interview Scheduling: Real-time video interviews using WebRTC. 🎥
-
Advanced Search Filters: Filter jobs by location, experience, and more.🔍
-
Real-time Notifications: Get updates for job applications, interviews, etc. ⏰
To run this project locally, follow these steps:
-
Clone the repository:
git clone https://github.com/Yashgabani845/hiring-portal.git
-
Navigate to the project directory:
cd hiring-portal
-
Install frontend dependencies:
npm install
-
Start the frontend server:
npm start
Or
npm run start:client
-
Start the backend server:
npm run start:server
-
Install python dependencies:
pip install Flask Flask-CORS PyPDF2 google-generativeai python-dotenv
-
Start the python server:
python ats.py
Here is an overview of the project's directory structure:
/hiring-portal
├── Backend 🔧 Server-side logic and APIs
│ ├── controllers 📂 Request handlers and business logic
│ ├── models 🗄️ Database schemas and models
│ ├── routes 🚦 API route definitions
│ └── temp 🗃️ Temporary files (logs or drafts)
├── public 🌐 Static files for frontend (index.html, etc.)
└── src 🛠️ Frontend application source code
├── CSS 🎨 Styling and CSS files
├── Components 📦 Reusable React components
├── assets 🖼️ Static resources like images and icons
├── firebase 🔥 Firebase configuration and integrations
We welcome contributions from the community! To contribute, please follow these guidelines:
- Fork the repository and clone it locally.
- Create a new branch for your feature or bug fix:
git checkout -b feature/your-feature-name
- Commit your changes with a clear message:
git commit -m "Add feature/your-feature-name"
- Push to your branch:
git push origin feature/your-feature-name
- Open a Pull Request (PR) 🔀and describe your changes in detail.
If you encounter any bugs or have feature requests, please follow this format when opening an issue:
- Issue Title: 📝 A concise and descriptive title.
- Description: 🔍 Clear and detailed description of the issue or feature request.
- Steps to Reproduce (if applicable): 🚶Detailed steps to reproduce the issue.
- Expected Behavior: ✅What you expected to happen.
- Actual Behavior: ❌What actually happened.
This project is open source and available under the MIT License.
Feel free to contribute, suggest features, or report issues to improve HireHub!
If you have any feedback, questions, or issues, feel free to reach out or open a GitHub Issue. -Linkedin:- https://www.linkedin.com/in/yash-gabani-527886258/ -Github:- https://github.com/Yashgabani845
Feel free to contact us at any of our social media handles incase of issue.
🌟 Stars | 🍴 Forks | 🐛 Issues | 🔔 Open PRs | 🔕 Closed PRs |