- Spring Framework
- Spring Boot
- Spring Boot Security
- Spring Data JPA
- Validation
- Postgres Driver
- Json Web Token (JWT)
- Map Struct
- AWS S3 (io.awspring.cloud)
- WebSocket (SockJS, Stomp)
- KDoc
- Auth Module (signin, signup, auth-interceptor, currentUser-annotation, etc)
- User Module
- Campaign Module (create, filter, findOne, update, delete, etc)
- Targets, Logs, Members, Chats
- Book Module (create, filter, findOne, update, delete, etc)
- Category Module (create, filter, findOne, update, delete, etc)
- Common (Pagination, General Responses DTO, General Exceptions, SecretConfiguration)
- Storage Module (S3)
- Storage Module (S3)
- Add user avatar-image
- Add book images, document-file
- MultipartFile Validator (content-type, size, etc)
- User Profile Management
- Add
PATCH /profiles/me
for updating user profile (username, avatar)
- Add
- Policy Manager (user-permissions, user-role)
- User Role
- User Permissions
- Initializer (default roles and permissions)
- Interceptor + Annotations (Guard) to check permissions and roles in controllers
- Tag Module
- Campaign Module
- Manage campaign (create, find, delete)
- Validate ownership policy for update/delete operation
- Join/Leave from campaign (campaign members)
- Campaign member management (campaign members)
- Campaign target (create, find, delete)
- Campaign target log (create, find, delete)
- Campaign real-time group chat
- Campaign transactions logs (changes tracker for owner)
- Manage campaign (create, find, delete)
- Migration - Flyway
- Docker
- Add Code Comments (KDoc)
- Entities
- DTOS
- Methods of Services
- Implement Websocket custom handshake (authorization)
- Auh Session Management (active devices, etc)
- OAuth Server (Spring)
- Purchasable products (book, etc)