How ederh3nr963/chatconnectspring works
ChatConnect is a Spring backend for private and group messaging, with REST and STOMP/WebSocket interfaces, presence, media attachments, and an authentication subsystem. The README documents the principal capabilities and hexagonal layering, but no application Java source was excerpted; therefore, implementation relationships are not asserted. Paths for unsampled capabilities use exact enclosing directories from the tree.
Main entry points: MessageService.java Message workflows · services Auth workflows · ChatService.java Chat workflows · AuthController.java Auth endpoints
Components 21
Authentication
- Auth endpoints
src/main/java/com/example/chatConnectSpring/auth/infrastructure/adapters/in/http/AuthController.java - Auth workflows
src/main/java/com/example/chatConnectSpring/auth/application/services - Token security
src/main/java/com/example/chatConnectSpring/auth/infrastructure/security - Auth state
src/main/java/com/example/chatConnectSpring/auth/infrastructure/adapters/out/persistence
Chat and Messaging
- Chat endpoints
src/main/java/com/example/chatConnectSpring/chat/infrastructure/adapters/in/http/ChatController.java - Message endpoints
src/main/java/com/example/chatConnectSpring/chat/infrastructure/adapters/in/http/MessageController.java - Chat workflows
src/main/java/com/example/chatConnectSpring/chat/application/services/ChatService.java - Membership and roles
src/main/java/com/example/chatConnectSpring/chat/application/services/ChatParticipantService.java - Message workflows
src/main/java/com/example/chatConnectSpring/chat/application/services/MessageService.java - Chat domain
src/main/java/com/example/chatConnectSpring/chat/domain/model/chat/Chat.java - Message domain
src/main/java/com/example/chatConnectSpring/chat/domain/model/message/Message.java
Realtime and Storage
- STOMP endpoints
src/main/java/com/example/chatConnectSpring/chat/infrastructure/adapters/in/websocket/MessageWebSocketController.java - Presence tracking
src/main/java/com/example/chatConnectSpring/chat/application/services/ManagePresenceService.java - Live notifications
src/main/java/com/example/chatConnectSpring/chat/application/listeners/MessageNotificationEventListener.java - Attachment processing
src/main/java/com/example/chatConnectSpring/chat/infrastructure/adapters/in/messaging/S3MediaEventsListener.java - Chat persistence
src/main/java/com/example/chatConnectSpring/chat/domain/ports/out/ChatRepository.java - Message persistence
src/main/java/com/example/chatConnectSpring/chat/domain/ports/out/MessageRepository.java
Other components
- Client
- Redis
- S3-compatible storage
- Mail service
Connections 18
- Client → Auth endpoints: authenticates
README.md - Client → Chat endpoints: manages chats
README.md - Client → Message endpoints: sends messages
README.md - Client → STOMP endpoints: connects via STOMP
README.md - Auth endpoints → Auth workflows: handles auth
- Auth workflows → Token security: issues tokens
- Auth workflows → Auth state: stores session state
- Auth workflows → Mail service: sends verification
- Chat endpoints → Chat workflows: manages chats
- Chat workflows → Membership and roles: manages members
- Chat workflows → Chat persistence: persists chats
- Message endpoints → Message workflows: handles messages
- STOMP endpoints → Message workflows: handles messages
- Message workflows → Message persistence: persists messages
- Message workflows → Live notifications: publishes updates
- Message workflows → Attachment processing: coordinates attachments
- Presence tracking → Redis: tracks presence
- Attachment processing → S3-compatible storage: processes uploads