diff --git a/README.md b/README.md index 9dffe69012..4dc8f36203 100644 --- a/README.md +++ b/README.md @@ -5,19 +5,98 @@ [![MyGet (with prereleases)](https://img.shields.io/myget/abp-nightly/vpre/Volo.Abp.svg?style=flat-square)](https://docs.abp.io/en/abp/latest/Nightly-Builds) [![NuGet Download](https://img.shields.io/nuget/dt/Volo.Abp.Core.svg?style=flat-square)](https://www.nuget.org/packages/Volo.Abp.Core) -ABP is an **open source application framework** focused on ASP.NET Core based web application development, but also supports developing other type of applications. +ABP Framework is a complete **infrastructure** based on the **ASP.NET Core** to create **modern web applications** and **APIs** by following the software development **best practices** and the **latest technologies**. -## Links +## Getting Started -* Official Web Site +- [Getting Started Guide](https://docs.abp.io/en/abp/4.0/Getting-Started) is the easiest way to start a new web application with the ABP Framework. +- [Web Application Development Tutorial](https://docs.abp.io/en/abp/4.0/Tutorials/Part-1) is a complete tutorial to develop a full stack web application. + +### Quick Start + +Install the ABP CLI: + +````bash +> dotnet tool install -g Volo.Abp.Cli +```` + +Create a new solution: + +````bash +> abp new BookStore -u mvc -d ef +```` + +> See the [CLI documentation](https://docs.abp.io/en/abp/latest/CLI) for all available options. + +### UI Framework Options + + + +### Database Provider Options + + + +## What ABP Provides? + +ABP provides a **full stack developer experience**. + +### Architecture + + + +ABP offers a complete, **modular** and **layered** software architecture based on **[Domain Driven Design](https://docs.abp.io/en/abp/latest/Domain-Driven-Design)** principles and patterns. It also provides the necessary infrastructure and guiding to [implement this architecture](https://docs.abp.io/en/abp/4.0/Domain-Driven-Design-Implementation-Guide). + +ABP Framework is suitable for **[microservice solutions](https://docs.abp.io/en/abp/latest/Microservice-Architecture)** as well as monolithic applications. + +### Infrastructure + +There are a lot of features provided by the ABP Framework to achieve real world scenarios easier, like [Event Bus](https://docs.abp.io/en/abp/4.0/Event-Bus), [Background Job System](https://docs.abp.io/en/abp/4.0/Background-Jobs), [Audit Logging](https://docs.abp.io/en/abp/4.0/Audit-Logging), [BLOB Storing](https://docs.abp.io/en/abp/4.0/Blob-Storing), [Data Seeding](https://docs.abp.io/en/abp/4.0/Data-Seeding), [Data Filtering](https://docs.abp.io/en/abp/4.0/Data-Filtering), etc. + +### Cross Cutting Concerns + +ABP also simplifies (and even automates wherever possible) cross cutting concerns and common non-functional requirements like [Exception Handling](https://docs.abp.io/en/abp/4.0/Exception-Handling), [Validation](https://docs.abp.io/en/abp/4.0/Validation), [Authorization](https://docs.abp.io/en/abp/4.0/Authorization), [Localization](https://docs.abp.io/en/abp/4.0/Localization), [Caching](https://docs.abp.io/en/abp/4.0/Caching), [Dependency Injection](https://docs.abp.io/en/abp/4.0/Dependency-Injection), [Setting Management](https://docs.abp.io/en/abp/4.0/Settings), etc. + +### Application Modules + +ABP is a modular framework and the Application Modules provide **pre-built application functionalities**; + +- [**Account**](https://docs.abp.io/en/abp/4.0/Modules/Account): Provides UI for the account management and allows user to login/register to the application. +- **[Identity](https://docs.abp.io/en/abp/4.0/Modules/Identity)**: Manages organization units, roles, users and their permissions, based on the Microsoft Identity library. +- [**IdentityServer**](https://docs.abp.io/en/abp/4.0/Modules/IdentityServer): Integrates to IdentityServer4. +- [**Tenant Management**](https://docs.abp.io/en/abp/4.0/Modules/Tenant-Management): Manages tenants for a [multi-tenant](https://docs.abp.io/en/abp/4.0/Multi-Tenancy) (SaaS) application. + +See the [Application Modules](https://docs.abp.io/en/abp/4.0/Modules/Index) document for all pre-built modules. + +### Startup Templates + +The [Startup templates](https://docs.abp.io/en/abp/4.0/Startup-Templates/Index) are pre-built Visual Studio solution templates. You can create your own solution based on these templates to **immediately start your development**. + +## ABP Community + +### ABP Community Web Site + +The [ABP Community](https://community.abp.io/) is a website to publish **articles** and share **knowledge** about the ABP Framework. You can also create content for the community! + +### Blog + +Follow the [ABP Blog](https://blog.abp.io/) to learn the latest happenings in the ABP Framework. + +### Samples + +See the [sample projects](https://docs.abp.io/en/abp/4.0/Samples/Index) built with the ABP Framework. + +### Want to Contribute? + +ABP is a community-driven open source project. See [the contribution guide](https://docs.abp.io/en/abp/4.0/Contribution/Index) if you want to be a part of this project. + +## Official Links + +* Main Web Site * Get Started * Features - * Documentation - * Samples - * Blog +* Documentation +* Samples +* Blog +* Community * Stack overflow * Twitter - -## Contribution - -ABP is an open source platform. Check [the contribution guide](docs/en/Contribution/Index.md) if you want to contribute to the project. diff --git a/docs/en/Index.md b/docs/en/Index.md index ade15044d4..95052add38 100644 --- a/docs/en/Index.md +++ b/docs/en/Index.md @@ -5,28 +5,19 @@ ABP Framework is a complete **infrastructure** based on the **ASP.NET Core** to ## Getting Started * [Getting Started Guide](Getting-Started.md) is the easiest way to start a new web application with the ABP Framework. - * [Web Application Development Tutorial](Tutorials/Part-1.md) is a complete tutorial to develop a full stack web application. -## Exploring the Documentation - -ABP has a comprehensive documentation that not only explains the ABP Framework, but also includes guides and samples to help you on creating a maintainable solution by introducing and discussing common software development principle and practices. +### UI Framework Options -### Multiple UI & Database Options + -ABP Framework has been designed to be **independent** of any UI Framework or Database Provider. +### Database Provider Options -The following **UI Frameworks** are officially supported and maintained; + -* [MVC / Razor Pages](UI/AspNetCore/Overall.md) -* [Blazor](UI/Blazor/Overall.md) -* [Angular](UI/Angular/Quick-Start.md) - -And the following **Database Providers** are provided out of the box; +## Exploring the Documentation -* [Entity Framework Core](Entity-Framework-Core.md) -* [MongoDB](MongoDB.md) -* [Dapper](Dapper.md) +ABP has a **comprehensive documentation** that not only explains the ABP Framework, but also includes **guides** and **samples** to help you on creating a **maintainable solution** by introducing and discussing common **software development principle and best practices**. ### Architecture @@ -55,20 +46,28 @@ Application Modules provides pre-built application functionalities; See the [Application Modules](Modules/Index.md) document for all pre-built modules. +### Startup Templates + +The [Startup templates](Startup-Templates/Index.md) are pre-built Visual Studio solution templates. You can create your own solution based on these templates to **immediately start your development**. + ## ABP Community ### The Source Code ABP is hosted on GitHub. See [the source code](https://github.com/abpframework). -### Samples - -See the [sample projects](Samples/Index.md) built with the ABP Framework. - ### ABP Community Web Site The [ABP Community](https://community.abp.io/) is a website to publish articles and share knowledge about the ABP Framework. You can also create content for the community! +### Blog + +Follow the [ABP Blog](https://blog.abp.io/) to learn the latest happenings in the ABP Framework. + +### Samples + +See the [sample projects](Samples/Index.md) built with the ABP Framework. + ### Want to Contribute? ABP is a community-driven open source project. See [the contribution guide](Contribution/Index.md) if you want to be a part of this project. diff --git a/docs/en/images/db-options.png b/docs/en/images/db-options.png new file mode 100644 index 0000000000..d9dc2ed0f4 Binary files /dev/null and b/docs/en/images/db-options.png differ diff --git a/docs/en/images/ddd-microservice-simple.png b/docs/en/images/ddd-microservice-simple.png new file mode 100644 index 0000000000..1217b243c8 Binary files /dev/null and b/docs/en/images/ddd-microservice-simple.png differ diff --git a/docs/en/images/ui-options.png b/docs/en/images/ui-options.png new file mode 100644 index 0000000000..bd211a8914 Binary files /dev/null and b/docs/en/images/ui-options.png differ