A modern Full Stack Job Portal built with React, Spring Boot, and MongoDB. JobFinder provides a seamless platform for recruiters to post jobs and job seekers to discover and apply for opportunities through an intuitive and responsive interface.
JobFinder is a full-stack web application designed to simplify the recruitment process. It enables recruiters to manage job postings while allowing candidates to search, filter, and apply for jobs through a clean and user-friendly interface.
The application follows a RESTful architecture where the React frontend communicates with the Spring Boot backend using REST APIs, with MongoDB serving as the primary database.
- Create new job postings
- Update existing jobs
- Delete job postings
- View all posted jobs
- Manage job listings
- Browse available jobs
- Search jobs by keyword
- Filter jobs
- View detailed job descriptions
- Responsive user experience
- React
- React Router
- Axios
- HTML5
- CSS3
- JavaScript (ES6+)
- Java 17
- Spring Boot
- Spring Web
- Spring Data MongoDB
- Maven
- MongoDB
- Git
- GitHub
- Postman
- IntelliJ IDEA
- VS Code
React Frontend
│
Axios API
│
Spring Boot REST API
│
Service Layer
│
Repository Layer
│
MongoDB
src
├── controller
├── service
├── repository
├── model
├── config
├── exception
└── resources
src
├── components
├── pages
├── services
├── hooks
├── assets
├── routes
└── utils
User
↓
React UI
↓
Axios Request
↓
Spring Boot REST API
↓
Business Logic
↓
MongoDB
↓
JSON Response
↓
React Updates UI
Add screenshots here after uploading them.
| Home | Job Details |
|---|---|
![]() |
![]() |
git clone https://github.com/ha7890846/JobFinder.gitcd JobFindercd backendConfigure your MongoDB connection in:
application.propertiesExample:
spring.data.mongodb.uri=mongodb://localhost:27017/jobfinderRun the application:
mvn spring-boot:runBackend runs on:
http://localhost:8080
cd frontendInstall dependencies
npm installStart development server
npm run devFrontend runs on
http://localhost:5173
| Method | Endpoint | Description |
|---|---|---|
| GET | /jobs |
Get all jobs |
| GET | /jobs/{id} |
Get job by ID |
| POST | /jobs |
Create new job |
| PUT | /jobs/{id} |
Update job |
| DELETE | /jobs/{id} |
Delete job |
- User Authentication (JWT)
- Role-based Authorization
- Resume Upload
- Company Profiles
- Saved Jobs
- Email Notifications
- Pagination
- Advanced Search Filters
- Docker Support
- CI/CD Pipeline
- Unit & Integration Testing
- Cloud Deployment (AWS/Azure)
This project helped me gain practical experience with:
- React Component Architecture
- RESTful API Development
- Spring Boot
- MongoDB Integration
- CRUD Operations
- Frontend & Backend Communication
- Exception Handling
- Git & GitHub Workflow
- Clean Project Structure
Harsh Agrawal
- GitHub: https://github.com/ha7890846
If you found this project useful, consider giving it a ⭐ on GitHub.
It motivates me to continue building and sharing open-source projects.

