Skip to content

Commit 148d7c9

Browse files
committed
Merge branch 'rel-9.0' of https://github.com/abpframework/abp into rel-9.0
2 parents 3095403 + 8865c7c commit 148d7c9

File tree

9 files changed

+216
-65
lines changed

9 files changed

+216
-65
lines changed

docs/en/docs-nav.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1642,6 +1642,10 @@
16421642
"text": "Overview",
16431643
"path": "solution-templates"
16441644
},
1645+
{
1646+
"text": "Template Guide",
1647+
"path": "solution-templates/guide.md"
1648+
},
16451649
{
16461650
"text": "Single-Layer Solution",
16471651
"path": "solution-templates/single-layer-web-application"

docs/en/get-started/index.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,7 @@ Please select one of the following documents best fits for your application:
1212
- [MAUI Application](maui.md)
1313
- [WPF Application](wpf.md)
1414
- [Console Application](console.md)
15+
16+
## Which Startup Template is Suitable for Me?
17+
18+
You can see the *[Solution Template Selection Guide](../solution-templates/guide.md)* if you are not sure which solution template is suitable for you.

docs/en/solution-templates/guide.md

Lines changed: 184 additions & 0 deletions
Large diffs are not rendered by default.
Loading
Loading
Loading

docs/en/solution-templates/index.md

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,21 @@
11
# Solution Templates
22

3-
ABP provides pre-architected and production-ready templates to jump start a new solution. The following solution templates are provided out of the box:
3+
ABP provides pre-architected and production-ready templates to jump start a new solution.
44

5-
* **[Single-Layer Solution](single-layer-web-application)**: A single-project solution. Recommended for building an application with a **simpler and easy to understand** architecture.
6-
* **[Layered Solution](layered-web-application)**: A fully layered (multiple projects) solution based on [Domain Driven Design](../framework/architecture/domain-driven-design) practices. Recommended for long-term projects that need a **maintainable and extensible** codebase.
7-
* **[Microservice Solution](microservice)**: A **distributed solution** to build **microservice systems**. It includes pre-built services, API gateways, web and mobile applications, Kubernetes and Helm configuration, and everything you need to start your large-scale microservice solution.
8-
* **[Application Module](application-module)**: A template that can be used to create a **reusable [application module](../modules)** based on the [module development best practices & conventions](../framework/architecture/best-practices). It is also suitable for creating **services** (with or without UI).
5+
> **You can see the [Solution Template Selection Guide](guide.md) if you are not sure which solution template is suitable for you.**
6+
7+
The following solution templates are provided out of the box:
8+
9+
* **[Single-Layer Solution](single-layer-web-application/index.md)**: A single-project solution. Recommended for building an application with a **simpler and easy to understand** architecture.
10+
* **[Layered Solution](layered-web-application/index.md)**: A fully layered (multiple projects) solution based on [Domain Driven Design](../framework/architecture/domain-driven-design) practices. Recommended for long-term projects that need a **maintainable and extensible** codebase.
11+
* **[Microservice Solution](microservice/index.md)**: A **distributed solution** to build **microservice systems**. It includes pre-built services, API gateways, web and mobile applications, Kubernetes and Helm configuration, and everything you need to start your large-scale microservice solution.
12+
* **[Application Module](application-module/index.md)**: A template that can be used to create a **reusable [application module](../modules/index.md)** based on the [module development best practices & conventions](../framework/architecture/best-practices/index.md). It is also suitable for creating **services** (with or without UI).
913
* **Others**
1014
- [MAUI Application](../get-started/maui.md)
1115
- [WPF Application](../get-started/wpf.md)
12-
- [Console Application](../get-started/console.md)
16+
- [Console Application](../get-started/console.md)
17+
18+
## See Also
19+
20+
* [Solution Template Selection Guide](guide.md)
21+
* [Get Started with ABP Platform](../get-started/index.md)

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

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# Layered Application Solution Template
22

3-
## Introduction
4-
53
This template provides a layered application structure based on the [Domain Driven Design](../../framework/architecture/domain-driven-design) (DDD) practices.
64

5+
## Getting Started
6+
77
This document explains **the solution structure** and projects in details. If you want to start quickly, follow the guides below:
88

99
* [The getting started document](../../get-started/layered-web-application.md) explains how to create a new application in a few minutes.
@@ -68,7 +68,8 @@ Use the `-m` (or `--mobile`) option to specify the mobile application framework:
6868
abp new Acme.BookStore -m react-native
6969
````
7070

71-
If not specified, no mobile application will be created.
71+
* [The getting started document](../../get-started/layered-web-application.md) explains how to create a new application with this startup template.
72+
* [The application development tutorial](../../tutorials/book-store/part-01.md) explains step by step application development with this startup template.
7273

7374
## Solution Structure
7475

docs/en/solution-templates/single-layer-web-application/index.md

Lines changed: 5 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,66 +1,15 @@
11
# Single Layer Application Solution Template
22

3-
## Introduction
4-
53
This template provides a simple solution structure with a single project. This document explains that solution structure in details.
64

7-
### The Difference Between the Application Solution Templates
8-
9-
ABP's [Layered Application Solution Template](../layered-web-application) provides a well-organized and layered solution to create maintainable business applications based on the [Domain Driven Design](../../framework/architecture/domain-driven-design) (DDD) practices. However, some developers find this template a little bit complex for simple and short-term applications. The single-layer application template has been created to provide a simpler development model for such applications. This template has the same functionality, features and modules on runtime with the [Layered Application Solution Template](../layered-web-application) but the development model is minimal and everything is in a single project (`.csproj`).
10-
11-
## How to Start with It?
12-
13-
You can use the [ABP CLI](../../cli) to create a new project using this startup template. Alternatively, you can generate a CLI command for this startup template from the [Get Started](https://abp.io/get-started) page. In this section, we will use the ABP CLI.
14-
15-
Firstly, install the ABP CLI if you haven't installed it before:
16-
17-
```bash
18-
dotnet tool install -g Volo.Abp.Studio.Cli
19-
```
20-
21-
Then, use the `abp new` command in an empty folder to create a new solution:
22-
23-
```bash
24-
abp new Acme.BookStore -t app-nolayers
25-
```
26-
27-
* `Acme.BookStore` is the solution name, like *YourCompany.YourProduct*. You can use single-level, two-level or three-level naming.
28-
* In this example, the `-t` (or `--template`) option specifies the template name.
29-
30-
### Specify the UI Framework
5+
## Getting Started
316

32-
This template provides multiple UI frameworks:
33-
34-
* `mvc`: ASP.NET Core MVC UI with Razor Pages (default)
35-
* `blazor`: Blazor UI
36-
* `blazor-server`: Blazor Server UI
37-
* `angular`: Angular UI
38-
* `none`: Without UI (for HTTP API development)
39-
40-
Use the `-u` (or `--ui`) option to specify the UI framework while creating the solution:
41-
42-
```bash
43-
abp new Acme.BookStore -t app-nolayers -u angular
44-
```
45-
46-
This example specifies the UI type (the `-u` option) as `angular`. You can also specify `mvc`, `blazor`, `blazor-server` or `none` for the UI type.
47-
48-
### Specify the Database Provider
49-
50-
This template supports the following database providers:
51-
52-
- `ef`: Entity Framework Core (default)
53-
- `mongodb`: MongoDB
54-
55-
Use the `-d` (or `--database-provider`) option to specify the database provider while creating the solution:
56-
57-
```bash
58-
abp new Acme.BookStore -t app-nolayers -d mongodb
59-
```
7+
* Follow the [Getting Started guide](../../get-started/single-layer-web-application.md) to create a new solution using this startup solution template.
8+
* Follow the [TODO application tutorial](../../tutorials/todo/single-layer/index.md) to learn how to create a simple application with this startup solution template.
609

61-
## Solution Structure
10+
## The Solution Structure
6211

63-
If you don't specify any additional options while creating an `app-nolayers` template, you will have a solution as shown below:
12+
If you created your solution with the default options, you will have a .NET solution as shown below:
6413

6514
![](../../images/bookstore-single-layer-solution-structure.png)
6615

0 commit comments

Comments
 (0)