Browse Source

Add navigation links and main components documentation for layered web application

pull/21648/head
ahmetfarukulu 1 year ago
parent
commit
12efa03396
  1. 10
      docs/en/solution-templates/layered-web-application/index.md
  2. 21
      docs/en/solution-templates/layered-web-application/main-components.md
  3. 4
      docs/en/solution-templates/layered-web-application/overview.md
  4. 14
      docs/en/solution-templates/layered-web-application/solution-structure.md

10
docs/en/solution-templates/layered-web-application/index.md

@ -1,5 +1,15 @@
# ABP Studio: Layered Solution Template
````json
//[doc-nav]
{
"Next": {
"Name": "Overview",
"Path": "solution-templates/layered-web-application/overview"
}
}
````
ABP Studio provides pre-architected, production-ready templates to jump-start a new solution. One of these templates is the Layered solution template. It is designed for building monolithic layered systems that follow common application patterns based on [Domain-Driven Design](../../framework/architecture/domain-driven-design) (DDD) principles. The template includes multiple layers, integrates existing modules, and provides host applications based on your selections, making it an excellent foundation for your layered system.
> **This document explains the Layered solution template in detail. It is a reference document to fully understand the solution and refer to when you have trouble.**

21
docs/en/solution-templates/layered-web-application/main-components.md

@ -0,0 +1,21 @@
# Layered Solution: Main Components
````json
//[doc-nav]
{
"Previous": {
"Name": "Solution structure",
"Path": "solution-templates/layered-web-application/solution-structure"
},
"Next": {
"Name": "Web Applications",
"Path": "solution-templates/layered-web-application/web-applications"
}
}
````
The solution consists of various applications; web applications, mobile applications, and a database migrator application. These applications are the main components of the solution and are designed to work together to provide a complete solution. The following documents explains these components in details:
* [Web Applications](web-applications.md)
* [Db Migrator](db-migrator.md)
* [Mobile Applications](mobile-applications.md)

4
docs/en/solution-templates/layered-web-application/overview.md

@ -3,6 +3,10 @@
````json
//[doc-nav]
{
"Previous": {
"Name": "Index",
"Path": "solution-templates/layered-web-application/index"
},
"Next": {
"Name": "Solution Structure",
"Path": "solution-templates/layered-web-application/solution-structure"

14
docs/en/solution-templates/layered-web-application/solution-structure.md

@ -3,6 +3,10 @@
````json
//[doc-nav]
{
"Previous": {
"Name": "Overview",
"Path": "solution-templates/layered-web-application/overview"
},
"Next": {
"Name": "Main Components",
"Path": "solution-templates/layered-web-application/main-components"
@ -191,7 +195,7 @@ The solution structure is shown below:
As different from the default structure, two new projects come into play: `.AuthServer` & `.HttpApi.Host`.
#### .AuthServer Project
### .AuthServer Project
This project is used as an authentication server for other projects. `.Web` project uses OpenId Connect Authentication to get identity and access tokens for the current user from the AuthServer. Then uses the access token to call the HTTP API server. HTTP API server uses bearer token authentication to obtain claims from the access token to authorize the current user.
@ -201,18 +205,18 @@ ABP uses the [OpenIddict Module](../../modules/openiddict.md) that uses the open
It has its own `appsettings.json` that contains database connection and other configurations.
#### .HttpApi.Host Project
### .HttpApi.Host Project
This project is an application that hosts the API of the solution. It has its own `appsettings.json` that contains database connection and other configurations.
#### .Web Project
### .Web Project
Just like the default structure, this project contains the User Interface (UI) of the application. It contains razor pages, JavaScript files, style files, images and so on...
This project contains an `appsettings.json` file, but this time it does not have a connection string because it never connects to the database. Instead, it mainly contains the endpoint of the remote API server and the authentication server.
#### How to Run?
### How to Run?
You can open the [Solution Runner](../../studio/running-applications.md) panel and start the all applications. The default username is `admin` and the password is `1q2w3E*`.
![run-solution-tiered](images/run-solution-tiered.png)
![run-solution-tiered](images/run-solution-tiered.png)

Loading…
Cancel
Save