How m-nikolovv/instaconnect works
InstaConnect is a four-service social platform. Users enter through the nginx API gateway and reach Identity for accounts and authentication, Posts for content and reactions, Chats for messaging, or Follows for relationships. The README documents asynchronous Kafka communication and SignalR features; sampled query services show application-facing domain logic validating related entities, querying repositories, and assembling responses. The tree and excerpts do not show most service wiring, so several layer and integration links are documented at a high level rather than traced to specific calls.
Main entry points: Program.cs Chats API · Features Posts repositories · InstaConnect.Follows.Presentation Follows API · Events Kafka events
Components 22
Gateway and clients
- Platform user
- nginx gateway
Identity service
- Identity API
src/Services/Identity/InstaConnect.Identity.Presentation - Identity application
src/Services/Identity/InstaConnect.Identity.Application - Identity domain
src/Services/Identity/InstaConnect.Identity.Domain
Posts service
- Posts API
src/Services/Posts/InstaConnect.Posts.Presentation - Posts application
src/Services/Posts/InstaConnect.Posts.Application - Post query services
src/Services/Posts/InstaConnect.Posts.Domain/Features/Posts/Helpers/PostQueryService.cs - Comment queries
src/Services/Posts/InstaConnect.Posts.Domain/Features/PostComments/Helpers/PostCommentQueryService.cs - Like queries
src/Services/Posts/InstaConnect.Posts.Domain/Features/PostLikes/Helpers/PostLikeQueryService.cs - Comment-like queries
src/Services/Posts/InstaConnect.Posts.Domain/Features/PostCommentLikes/Helpers/PostCommentLikeQueryService.cs - Posts repositories
src/Services/Posts/InstaConnect.Posts.Infrastructure/Features
Chats and follows
- Chats API
src/Services/Chats/InstaConnect.Chats.Presentation/Program.cs - Chat query services
src/Services/Chats/InstaConnect.Chats.Domain/Features/Chats/Helpers/ChatQueryService.cs - Message queries
src/Services/Chats/InstaConnect.Chats.Domain/Features/ChatMessages/Helpers/ChatMessageQueryService.cs - Follows API
src/Services/Follows/InstaConnect.Follows.Presentation - Follow queries
src/Services/Follows/InstaConnect.Follows.Domain/Features/Follows/Helpers/FollowQueryService.cs
Shared platform
- Kafka events
src/Common/InstaConnect.Common.Infrastructure/Features/Events - SignalR messaging
src/Common/InstaConnect.Common.Infrastructure/Features/Hubs - MongoDB
- Redis cache
src/Common/InstaConnect.Common.Infrastructure/Features/Caches - Shared application pipeline
src/Common/InstaConnect.Common.Application/Features
Connections 24
- Platform user → nginx gateway: sends requests
README.md - nginx gateway → Identity API: routes identity
README.md - nginx gateway → Posts API: routes posts
README.md - nginx gateway → Chats API: routes chats
README.md - nginx gateway → Follows API: routes follows
README.md - Identity API → Identity application: dispatches requests
- Identity application → Identity domain: uses domain
- Posts API → Posts application: dispatches requests
- Posts application → Post query services: invokes queries
- Post query services → Posts repositories: queries posts
- Comment queries → Posts repositories: queries comments
- Like queries → Posts repositories: queries likes
- Comment-like queries → Posts repositories: queries reactions
- Chats API → Chat query services: dispatches queries
- Chats API → Message queries: dispatches queries
- Follows API → Follow queries: dispatches queries
- Identity API → Kafka events: exchanges events
- Posts API → Kafka events: exchanges events
- Chats API → Kafka events: exchanges events
- Follows API → Kafka events: exchanges events
- Chats API → SignalR messaging: supports messaging
README.md - Follows API → SignalR messaging: supports notifications
README.md - Shared application pipeline → Redis cache: caches queries
- Posts repositories → MongoDB: reads data