A Full Stack Job Portal Application built using Spring Boot and React.js, enabling Job Seekers and Recruiters to interact through secure authentication, job posting, and job searching with filters.
- User Registration & Login
- JWT-based authentication
- Role-based access (JOB_SEEKER, RECRUITER, ADMIN)
- Secure APIs using Spring Security
- Post new jobs
- Update job details
- Delete jobs
- View jobs posted by recruiter
-
View all jobs
-
Search jobs by keyword
-
Filter jobs by:
- Location
- Industry
- Salary
-
View job details
- Java
- Spring Boot
- Spring Security
- JWT
- JPA / Hibernate
- MySQL
- React.js
- React Router
- Axios
- HTML, CSS, JavaScript
- Git & GitHub
- Maven
- Postman
src/main/java/com/jobportal
βββ controller
βββ service
βββ repository
βββ entity
βββ dto
βββ security
βββ exception
src
βββ components
βββ pages
βββ services
βββ App.jsx
βββ main.jsx
usersrolesjobsapplications
-
JPA/Hibernate for entity mapping
-
Relationships using:
@OneToMany@ManyToOne
-
Clone the repository
-
Configure MySQL in
application.properties -
Create database:
CREATE DATABASE jobportal;
-
Run the application:
mvn spring-boot:run
-
Backend URL:
http://localhost:8080
-
Navigate to frontend folder
-
Install dependencies:
npm install
-
Start application:
npm run dev
-
Frontend URL:
http://localhost:5173
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/auth/register |
Register user |
| POST | /api/auth/login |
Login user |
| POST | /api/jobs |
Post a job |
| GET | /api/jobs |
Get all jobs |
| GET | /api/jobs/search |
Search & filter jobs |
| DELETE | /api/jobs/{id} |
Delete job |
- Apply for job functionality
- Resume upload
- Admin dashboard
- Email notifications
- Docker & AWS deployment
Ashish Gawali Full Stack Java Developer










