This project is a Job Platform designed to connect job seekers and employers seamlessly. It provides an intuitive interface and robust functionality for:
- Job Seekers: Searching and applying for jobs, managing profiles, and tracking applications.
- Employers: Posting job listings, managing applicants, and hiring efficiently.
- Admins: Monitoring platform activities, managing users, and generating reports.
-
Search and Filter Jobs
- Find jobs based on keywords, location, and categories.
-
Profile Management
- Create and update profiles with resumes and personal details.
-
Application Tracking
- View application statuses and respond to employer messages.
-
Job Alerts & Notifications
- Get real-time notifications for new job postings.
-
Resume Builder
- Create a resume directly within the platform.
-
Post Job Listings
- Create job postings with detailed requirements.
-
Manage Applications
- Review and shortlist candidates efficiently.
-
Communicate with Applicants
- Contact candidates for interviews or follow-ups.
-
Company Profiles
- Showcase company information and attract top talent.
-
Dashboard
- Monitor site usage, job postings, and user activities.
-
User Management
- Approve or revoke access for job seekers and employers.
-
Reports & Analytics
- Generate platform analytics and financial statistics.
-
Fraud Detection
- Detect and prevent spam or fraudulent job listings.
- Backend: Django REST Framework for API development.
- Frontend: React and Tailwind CSS for a dynamic and responsive UI.
- Database: MySQL for reliable and scalable data management.
- Authentication: JWT for secure user authentication.
- Styling: Tailwind CSS for modern design.
- Hosting: Vercel for fast and seamless deployment.
-
Sign Up or Login
- Create an account or log in to access job opportunities.
-
Search Jobs
- Use filters to find the most relevant opportunities.
-
Apply for Jobs
- Submit applications directly from the platform.
-
Manage Applications
- Track job application status and receive notifications.
-
Sign Up or Login
- Create an employer account or log in to access the dashboard.
-
Post Jobs
- Add job listings with details like job description, requirements, and salary.
-
Review Applications
- Manage candidate applications and communicate with potential hires.
-
Hire Candidates
- Schedule interviews and finalize hiring decisions.
-
Clone the repository:
git clone https://github.com/Emmanuel10701/jobs_python_django.git cd job-platform -
Install dependencies:
npm install
-
Start the development server:
npm run dev
-
Open the application in your browser:
http://localhost:3000
-
Install dependencies:
pip install -r requirements.txt
-
Run database migrations:
python manage.py migrate
-
Start the Django server:
python manage.py runserver
-
API available at:
http://127.0.0.1:8000/api/
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/jobs/ | Get all job listings |
| GET | /api/jobs/{id}/ | Get a single job by ID |
| POST | /api/jobs/ | Create a new job listing (Employer) |
| PUT | /api/jobs/{id}/ | Update job details (Employer) |
| DELETE | /api/jobs/{id}/ | Delete a job listing (Admin/Employer) |
| POST | /api/auth/register/ | User registration |
| POST | /api/auth/login/ | User login |
- Frontend: Vercel (Automatic deployment on push to
mainbranch). - Backend: Deployed on AWS EC2 / DigitalOcean (Configurable based on project requirements).
Contributions are welcome! If you find a bug or want to add new features, feel free to submit a pull request.
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch). - Commit changes (
git commit -m 'Added a new feature'). - Push to the branch (
git push origin feature-branch). - Open a pull request.
This project is open-source and available under the MIT License.
If you have any questions or feedback, feel free to reach out:
📩 Email: emmanuelmakau90@gmail.com
🔗 GitHub: Emmanuel10701
🚀 Live Demo: Job Platform