How lakshygupta/blog-app-apis works
This is a Spring Boot REST backend for managing blog users, posts, categories, and comments. The principal workflow is a client request to an API controller, through domain services, to persistence, with DTOs returned as responses. Post operations include category/user association, keyword search, pagination and sorting; image upload and serving form a separate file workflow. Authentication supports registration and JWT login, with role-based access and centralized exception handling. Post, user, and auth wiring is visible in sampled source; category/comment implementation details are represented from the tree and README, so their internal links are omitted.
Main entry points: AuthController.java Auth API · PostController.java Post API · PostRepo.java JPA Repositories · GlobalExceptionHandler.java Exception Handler
Components 19
REST API
- Post API
src/main/java/com/lakshy/blog/controllers/PostController.java - Category API
src/main/java/com/lakshy/blog/controllers/CategoryController.java - Comment API
src/main/java/com/lakshy/blog/controllers/CommentController.java - User API
src/main/java/com/lakshy/blog/controllers/UserController.java - Auth API
src/main/java/com/lakshy/blog/controllers/AuthController.java
Blog Domain
- Post Service
src/main/java/com/lakshy/blog/services/impl/PostServiceImpl.java - Category Service
src/main/java/com/lakshy/blog/services/impl/CategoryServiceImpl.java - Comment Service
src/main/java/com/lakshy/blog/services/impl/CommentServiceImpl.java - User Service
src/main/java/com/lakshy/blog/services/impl/UserServiceImpl.java - JPA Repositories
src/main/java/com/lakshy/blog/repositories/PostRepo.java - MySQL Database
Identity & Security
- JWT Security
src/main/java/com/lakshy/blog/security/JwtTokenHelper.java - User Details
src/main/java/com/lakshy/blog/security/CustomUserDetailService.java - JWT Filter
src/main/java/com/lakshy/blog/security/JwtAuthenticationFilter.java - Security Config
src/main/java/com/lakshy/blog/config/SecurityConfig.java
Files & Errors
- Image Files
src/main/java/com/lakshy/blog/services/impl/FileServiceImpl.java - Image Storage
- Exception Handler
src/main/java/com/lakshy/blog/exceptions/GlobalExceptionHandler.java
Other components
- API Client
Connections 22
- API Client → Post API: sends requests
- API Client → Category API: sends requests
- API Client → Comment API: sends requests
- API Client → User API: sends requests
- API Client → Auth API: sends requests
- Post API → Post Service: calls
- Post Service → JPA Repositories: reads/writes
- JPA Repositories → MySQL Database: persists
- User API → User Service: calls
- User Service → JPA Repositories: reads/writes
- Auth API → User Service: registers
- Auth API → User Details: loads user
- User Details → JPA Repositories: looks up user
- Auth API → JWT Security: creates token
- Auth API → JWT Filter: returns token
- Security Config → JWT Filter: configures
- Post API → Image Files: uploads/reads
- Image Files → Image Storage: reads/writes
- Post API → Exception Handler: raises handled errors
- Category API → Exception Handler: raises handled errors
- Comment API → Exception Handler: raises handled errors
- User API → Exception Handler: raises handled errors