Architecture Overview
Summary
HR Suit is a .NET 8 and React platform in which an active ASP.NET Core monolith coexists with extracted ASP.NET Core services behind a YARP gateway.
Audience
- Developers and QA engineers
- DevOps engineers
- Implementation partners
- Solution architects
Overview
The source is organized as a monorepo containing the monolith, a microservices solution, shared .NET libraries, and a React/Vite workspace with client HRMS and super-admin applications. Extracted services reference shared integration contracts and a shared technical kernel rather than compiling against one another.
PostgreSQL supports the monolith and service-owned persistence boundaries. RabbitMQ supports asynchronous, topic-based integration. Shared event contracts, transactional outbox storage, consumer idempotency records, and selected read models support cross-service workflows. Maturity and adoption vary by service during the RC1 transition.
High-level components
The shared kernel contains reusable technical concerns such as correlation, observability, messaging, and outbox abstractions. Shared contracts define integration messages. Neither should be treated as a shared business database.
Request lifecycle
The selected backend can be the monolith or an extracted service. Authentication and authorization are primarily enforced by the downstream application boundary.
Event lifecycle
The event path is asynchronous. Relay and consumer participation is service-specific, so this diagram describes the established pattern rather than claiming uniform adoption.
Deployment model
Container assets support a high-level AWS managed application hosting model for selected portals and backend components. The architecture also depends on PostgreSQL, messaging, storage, and telemetry services. Exact environment topology, scaling, and network controls belong in approved deployment documentation.
Related Articles
See Also
Keywords
- Component architecture
- Request lifecycle
- Event lifecycle
Revision Information
- Last reviewed: 2026-07-14
- Owner: architecture-team
- Status: Draft