A full-stack job search management application built with Java 25 and Spring Boot 4.
- Backend: Java 25, Spring Boot 4.0.6, Spring Data JPA, Spring Security
- Database: H2 (file-based, local persistence)
- Build: Maven 3.9
- Frontend: HTML, CSS, JavaScript (served via Spring Boot)
- Track job applications with full detail per role
- Application status pipeline (Applied → Screening → Interview → Offer)
- AI-powered resume tailoring per job description
- AI-powered interview prep with feedback
- Closed/denied application tracking with feedback capture
Standard Spring Boot layered architecture: controller/ — REST endpoints, HTTP in/out only service/ — business logic repository/ — Spring Data JPA interfaces model/ — JPA entities dto/ — API request and response objects config/ — WebClient, Security configuration
Prerequisites:
- Java 25
- Maven 3.9+
Start the application:
mvn spring-boot:runApplication runs at http://localhost:8080
H2 Console: http://localhost:8080/h2-console
- JDBC URL:
jdbc:h2:file:./data/careertracker - Username:
sa - Password: (leave empty)
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/applications |
Create new application |
| GET | /api/applications |
Get all applications |
| GET | /api/applications/active |
Get active applications |
| GET | /api/applications/closed |
Get closed applications |
| GET | /api/applications/{id} |
Get single application |
| PUT | /api/applications/{id} |
Update application |
| DELETE | /api/applications/{id} |
Delete application |