How imethmakariyawasam/miniblog-micro works
miniblog-micro is a three-service blogging backend. Users register or log in through the user service, which persists accounts and issues JWTs; authenticated comment requests are accepted by the comment service, which checks post existence through the post service before storing comments. The post service independently exposes post CRUD. The graph emphasizes these request paths and the persistence/authentication layers. README provides no further capability detail, and unsampled service wiring is not inferred.
Main entry points: AuthController.java Authentication API · CommentService.java Comment Workflow · CommentController.java Comments API · CustomUserDetailsService.java User Details Lookup
Components 21
User and Auth
- Authentication API
user-service/src/main/java/com/miniblog/user_service/controller/AuthController.java - User Records
user-service/src/main/java/com/miniblog/user_service/repository/UserRepository.java - User Details Lookup
user-service/src/main/java/com/miniblog/user_service/service/CustomUserDetailsService.java - User Entity
user-service/src/main/java/com/miniblog/user_service/model/User.java - Auth DTOs
user-service/src/main/java/com/miniblog/user_service/dto
Post Management
- Posts API
post-service/src/main/java/com/miniblog/post_service/controller/PostController.java - Post Records
post-service/src/main/java/com/miniblog/post_service/repository/PostRepository.java - Post Entity
post-service/src/main/java/com/miniblog/post_service/model/Post.java
Comment Management
- Comments API
comment-service/src/main/java/com/miniblog/comment_service/controller/CommentController.java - Comment Workflow
comment-service/src/main/java/com/miniblog/comment_service/service/CommentService.java - Post Existence Client
comment-service/src/main/java/com/miniblog/comment_service/client/PostServiceClient.java - Comment Records
comment-service/src/main/java/com/miniblog/comment_service/repository/CommentRepository.java - Comment Entity
comment-service/src/main/java/com/miniblog/comment_service/model/Comment.java - Comment Request
comment-service/src/main/java/com/miniblog/comment_service/dto/CommentRequest.java - Missing Post Error
comment-service/src/main/java/com/miniblog/comment_service/service/PostNotFoundException.java
Token Security
- JWT Issuer
user-service/src/main/java/com/miniblog/user_service/service/JwtService.java - User JWT Filter
user-service/src/main/java/com/miniblog/user_service/security/JwtAuthFilter.java - User Security Config
user-service/src/main/java/com/miniblog/user_service/security/SecurityConfig.java - Comment JWT Filter
comment-service/src/main/java/com/miniblog/comment_service/security/JwtAuthFilter.java - Comment Token Validator
comment-service/src/main/java/com/miniblog/comment_service/service/JwtService.java
Other components
- API Client
Connections 22
- API Client → Authentication API: registers or logs in
user-service/src/main/java/com/miniblog/user_service/controller/AuthController.java - Authentication API → User Records: reads and saves
user-service/src/main/java/com/miniblog/user_service/controller/AuthController.java - Authentication API → User Entity: creates user
user-service/src/main/java/com/miniblog/user_service/controller/AuthController.java - Authentication API → JWT Issuer: issues token
user-service/src/main/java/com/miniblog/user_service/controller/AuthController.java - Authentication API → Auth DTOs: uses request and response
user-service/src/main/java/com/miniblog/user_service/controller/AuthController.java - User Details Lookup → User Records: loads account
user-service/src/main/java/com/miniblog/user_service/service/CustomUserDetailsService.java - User Details Lookup → User Entity: returns account
user-service/src/main/java/com/miniblog/user_service/service/CustomUserDetailsService.java - User JWT Filter → JWT Issuer: validates token
user-service/src/main/java/com/miniblog/user_service/security/JwtAuthFilter.java - User JWT Filter → User Details Lookup: loads identity
user-service/src/main/java/com/miniblog/user_service/security/JwtAuthFilter.java - API Client → Posts API: manages posts
post-service/src/main/java/com/miniblog/post_service/controller/PostController.java - Posts API → Post Records: reads and writes
post-service/src/main/java/com/miniblog/post_service/controller/PostController.java - Post Records → Post Entity: persists
post-service/src/main/java/com/miniblog/post_service/repository/PostRepository.java - API Client → Comments API: requests comments
comment-service/src/main/java/com/miniblog/comment_service/controller/CommentController.java - Comments API → Comment Workflow: delegates
comment-service/src/main/java/com/miniblog/comment_service/controller/CommentController.java - Comments API → Comment Request: accepts request
comment-service/src/main/java/com/miniblog/comment_service/controller/CommentController.java - Comment Workflow → Post Existence Client: checks post
comment-service/src/main/java/com/miniblog/comment_service/service/CommentService.java - Post Existence Client → Posts API: queries existence
- Comment Workflow → Comment Records: reads and saves
comment-service/src/main/java/com/miniblog/comment_service/service/CommentService.java - Comment Workflow → Comment Entity: constructs comment
comment-service/src/main/java/com/miniblog/comment_service/service/CommentService.java - Comment Records → Comment Entity: persists
comment-service/src/main/java/com/miniblog/comment_service/repository/CommentRepository.java - Comment JWT Filter → Comment Token Validator: validates token
comment-service/src/main/java/com/miniblog/comment_service/security/JwtAuthFilter.java - Comment Workflow → Missing Post Error: raises when absent
comment-service/src/main/java/com/miniblog/comment_service/service/CommentService.java