Version

Microservice Solution: Web Applications

The ABP Studio microservice solution template contains a few web applications. These applications are fully integrated to the solution, uses the microservices through the API gateways.

The following figure shows the application in the Solution Explorer pane of ABP Studio:

applications-in-microservice-solution

Count and types of the web applications depends on the options you've selected while creating your solution. This document introduces and explains all the pre-built web applications included in the microservice solution template.

AuthServer

Acme.CloudCrm.AuthServer is the authentication server of the system. It is always included in the solution. It is a single-sign-on point, which means all the applications are using it for user login. Once users login via an application, they don't need to enter credentials (username, password) again for the other applications in the same browser, until they logout from one of the applications.

The AuthServer application is also used by microservices as Authority for JWT Bearer Authentication.

You normally do not directly browse this application. It is used by the other applications to authenticate the users and applications..

The following screenshot was taken from the Login page of the Account module in the application's UI:

authserver-login-page

That application is mainly based on the OpenIddict, the Identity, and the Account modules. So, it basically has login, register, forgot password, two factor authentication and other authentication related pages.

The Main Web Application (optional)

This is the main web application of the solution. It uses the Acme.CloudCrm.AuthServer application as the API gateway. It also uses the Authentication Server application to make users login.

The following screenshot was taken from the Role Management page of the Identity module in the web application's UI:

web-application-ui

The following options are provided while creating the solution:

  • MVC / Razor Pages UI
  • Angular
  • Blazor WebAssembly
  • Blazor Server
  • MAUI Blazor (Hybrid)

The following sections explain each of these UI types.

MVC / Razor Pages Web Application

Acme.CloudCrm.Web module is created if you've selected the MVC / Razor Pages UI while creating the solution. It has own .NET solution that is located under the apps/web folder of the solution root.

Angular Web Application

If you've selected the Angular UI while creating your solution, a folder named angular is included in the apps folder of the solution. That folder contains the main web application of the solution that is implemented using Angular.

Blazor WebAssembly Web Application

If you've selected the Blazor WebAssembly UI while creating your solution, Acme.CloudCrm.Blazor project is included in the apps folder of the solution. That folder contains the main web application of the solution that is implemented using Blazor WebAssembly.

Blazor Server Web Application

If you've selected the Blazor Server UI while creating your solution, Acme.CloudCrm.Blazor project is included in the apps folder of the solution. That folder contains the main web application of the solution that is implemented using Blazor Server.

MAUI Blazor (Hybrid) Web Application

If you've selected the MAUI Blazor (Hybrid) UI while creating your solution, Acme.CloudCrm.MauiBlazor project is included in the apps folder of the solution. That folder contains the main desktop application of the solution that is implemented using MAUI Blazor (Hybrid) that uses existing Blazor UI Implementation.

Was this page helpful?
Please make a selection.
Thank you for your valuable feedback!

Please note that although we cannot respond to feedback, our team will use your comments to improve the experience.

In this document
Mastering ABP Framework Book
Mastering ABP Framework

This book will help you gain a complete understanding of the framework and modern web application development techniques.