Prerequisites for Developing ABP Applications

This document will guide you through preparing your development environment for ABP based application development.

Notices

The prerequisites mentioned in this document are not necessary for every project type;

  • You don't need to install the EF Core CLI if your application uses MongoDB instead of EF Core.
  • You don't need to install Helm, NGINX Ingress, or mkcert if you are developing a non-microservice application.

README.MD files in new solutions contain specific requirements for your solution. Please refer to the README.MD file of your solution.

IDE

You need to use an IDE that supports .NET development. The following IDEs are the most popular ones for .NET development.

Visual Studio

Visual Studio is Microsoft's IDE and is the de facto tool for developing .NET projects. You can download Visual Studio from the Visual Studio official website. It also has a free Community edition which is more than enough for ABP projects.

Visual Studio Code

Visual Studio Code is a free and cross-platform lightweight code editor that supports .NET development. You can download from here.

JetBrains Rider

JetBrains Rider is a cross-platform IDE by JetBrains that supports .NET development. It is free for non-commercial use.

.NET SDK

ABP is based on NET, so you need to install the .NET SDK. You can download the .NET SDK from the .NET official website.

Installing Visual Studio or JetBrains Rider may automatically install the .NET SDK.

EF Core CLI

If you are using Entity Framework Core as your database access provider, you need to install the EF Core CLI. You can install it by running the following command:

dotnet tool install --global dotnet-ef

If you have already installed the EF Core CLI, you can update it by running the following command:

dotnet tool update --global dotnet-ef

Node.js and Yarn

ABP projects include some frontend resource packages, so you need to install Node.js and Yarn to manage these resource packages. You can download Node.js from the official Node.js website. We recommend installing version v20.11+.

Using Yarn (classic) to manage frontend resource packages is faster and more stable than using npm. You can download Yarn from the Yarn official website. We recommend installing Yarn v1.22+ (make sure to install the Classic version, not v2+).

To install Yarn using npm, run the following command:

npm install --global yarn

Docker Engine or Docker Desktop

ABP's Layered Solution and Microservice Solution use Docker to run infrastructure services (e.g. SQL Server, Redis, RabbitMQ) required by your application. You can install Docker Engine or Docker Desktop (recommended) on Windows, macOS and Linux.

Is Docker Engine or Docker Desktop Free?

Docker Engine is an open-source and free containerization technology for building and containerizing your applications. Docker Engine follows the Apache License 2.0.

Docker Desktop is free for small businesses (fewer than 250 employees and less than $10 million in annual revenue), personal use, education, and non-commercial open-source projects.

PowerShell

ABP startup solution templates and tools use some PowerShell scripts (*.ps1) to perform certain tasks. You can refer to the PowerShell documentation for guidance on how to install PowerShell on Windows, macOS, and Linux.

MicroService Solution

The following tools are only required to develop ABP's microservice solution

Helm

Helm is a package manager for Kubernetes. You can install Helm by following the Helm installation guide.

See Helm Deployment on Local Kubernetes Cluster for more information.

NGINX Ingress or NGINX Ingress using Helm

NGINX Ingress is an Ingress controller for Kubernetes. You can install NGINX Ingress by following the NGINX Ingress installation guide.

If you are using Helm, you can install NGINX Ingress using the following commands:

helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
helm repo update
helm upgrade --install --version=4.0.19 ingress-nginx ingress-nginx/ingress-nginx

mkcert

Use mkcert to generate trusted certificates for local development. You can install mkcert by following the official mkcert installation guide.

Contributors


Last updated: December 20, 2024 Edit this page on GitHub

Was this page helpful?

Please make a selection.

To help us improve, please share your reason for the negative feedback in the field below.

Please enter a note.

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
Community Talks

Layered vs Modular vs Microservices... Which one is best for you?

09 Jan, 17:00
Online
Register Now
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.

Learn More