Overview
Let's explore what the StarterKit represents from a code perspective. It comprises two APIs with two distinct frontend web applications: Identity and App. These two services are separated and interact via HTTP and AMQP protocols, also featuring independent deployments.
The API is developed in DotNet, while React is used for the frontend of the App, and Preact for Identity. Both frontend applications are written in TypeScript.
App
[ASPNETCore API; ReactJS]
From a business logic standpoint, this is our monolith. It covers all functionalities except user authentication (in its basic iteration). Additionally, it serves as the Backend-for-Frontend orchestrating requests to the main domain and Identity.
Identity
[ASPNETCore API; IdentityServer4; Preact]
An AspNetCore service built around IdentityServer4 to execute user authentication via the OpenID protocol (auth code + PKCE) and user account management: sign in/out, MFA, reset password, activate/deactivate, lock/unlock.