Skip to content

βœ… Merge main into live #2839

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Mar 15, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/frameworks/dapr.md
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,6 @@ When the Dapr SDK is used, the Dapr sidecar is called over HTTP. The Dapr sideca
- [Dapr](https://dapr.io/)
- [Dapr documentation](https://docs.dapr.io/)
- [Dapr GitHub repo](https://github.com/dapr/dapr)
- [.NET Aspire Dapr sample app](/samples/dotnet/aspire-samples/aspire-dapr/)
- [.NET Aspire Dapr sample app](https://github.com/CommunityToolkit/Aspire/tree/main/examples/dapr)
- [.NET Aspire integrations](../fundamentals/integrations-overview.md)
- [.NET Aspire GitHub repo](https://github.com/dotnet/aspire)
4 changes: 2 additions & 2 deletions docs/fundamentals/app-host-overview.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
---
title: .NET Aspire orchestration overview
description: Learn the fundamental concepts of .NET Aspire orchestration and explore the various APIs for adding resources and expressing dependencies.
ms.date: 02/25/2025
ms.date: 03/14/2025
ms.topic: overview
uid: dotnet/aspire/app-host
---

# .NET Aspire orchestration overview

.NET Aspire provides APIs for expressing resources and dependencies within your distributed application. In addition to these APIs, [there's tooling](setup-tooling.md#install-net-aspire) that enables several compelling scenarios. The orchestrator is intended for _local development_ purposes and isn't supported in production environments.
.NET Aspire provides APIs for expressing resources and dependencies within your distributed application. In addition to these APIs, [there's tooling](setup-tooling.md#install-net-aspire-prerequisites) that enables several compelling scenarios. The orchestrator is intended for _local development_ purposes and isn't supported in production environments.

<span id="terminology"></span>

Expand Down
74 changes: 2 additions & 72 deletions docs/fundamentals/aspire-sdk-templates.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: .NET Aspire templates
description: Learn how to install the .NET Aspire templates, and how to use them to create new apps.
ms.date: 11/09/2024
description: Learn about the .NET Aspire templates and how to use them to create new apps.
ms.date: 03/11/2025
zone_pivot_groups: dev-environment
uid: dotnet/aspire/templates
---
Expand All @@ -12,76 +12,6 @@ There are a number of .NET Aspire project templates available to you. You can us

The .NET Aspire templates are available in the [πŸ“¦ Aspire.ProjectTemplates](https://www.nuget.org/packages/Aspire.ProjectTemplates) NuGet package.

## Install the .NET Aspire templates

:::zone pivot="visual-studio"

To install the .NET Aspire templates in Visual Studio, you need to manually install them unless you're using Visual Studio 17.12 or later. For Visual Studio 17.9 to 17.11, follow these steps:

1. Open Visual Studio.
1. Go to **Tools** > **NuGet Package Manager** > **Package Manager Console**.
1. Run the following command to install the templates:

```dotnetcli
dotnet new install Aspire.ProjectTemplates
```

For Visual Studio 17.12 or later, the .NET Aspire templates are installed automatically.

:::zone-end
:::zone pivot="vscode,dotnet-cli"

To install these templates, use the [dotnet new install](/dotnet/core/tools/dotnet-new-install) command, passing in the `Aspire.ProjectTemplates` NuGet identifier.

```dotnetcli
dotnet new install Aspire.ProjectTemplates
```

To install a specific version, append the version number to the package name:

```dotnetcli
dotnet new install Aspire.ProjectTemplates::9.0.0
```

> [!TIP]
> If you already have the .NET Aspire workload installed, you need to pass the `--force` flag to overwrite the existing templates. Feel free to uninstall the .NET Aspire workload.

:::zone-end

## List the .NET Aspire templates

:::zone pivot="visual-studio"

The .NET Aspire templates are installed automatically when you install Visual Studio 17.9 or later. To see what .NET Aspire templates are available, select **File** > **New** > **Project** in Visual Studio, and search for "Aspire" in the search bar (<kbd>Alt</kbd>+<kbd>S</kbd>). You'll see a list of available .NET Aspire project templates:

:::image type="content" source="media/vs-create-dotnet-aspire-proj.png" alt-text="Visual Studio: Create new project and search for 'Aspire'." lightbox="media/vs-create-dotnet-aspire-proj.png":::

:::zone-end
:::zone pivot="vscode"

To view the available templates in Visual Studio Code with the C# DevKit installed, select the **Create .NET Project** button when no folder is opened in the **Explorer** view:

:::image type="content" source="media/vscode-create-dotnet-proj.png" alt-text="Visual Studio Code: Create .NET Project button." lightbox="media/vscode-create-dotnet-proj.png":::

Then, search for "Aspire" in the search bar to see the available .NET Aspire project templates:

:::image type="content" source="media/vscode-create-dotnet-aspire-proj.png" alt-text="Visual Studio Code: Create new project and search for 'Aspire'." lightbox="media/vscode-create-dotnet-aspire-proj.png":::

:::zone-end
:::zone pivot="dotnet-cli"

To verify that the .NET Aspire templates are installed, use the [dotnet new list](/dotnet/core/tools/dotnet-new-list) command, passing in the `aspire` template name:

```dotnetcli
dotnet new list aspire
```

Your console output should look like the following:

[!INCLUDE [dotnet-new-list-aspire-output](includes/dotnet-new-list-aspire-output.md)]

:::zone-end

## Available templates

The .NET Aspire templates allow you to create new apps pre-configured with the .NET Aspire solutions structure and default settings. These projects also provide a unified debugging experience across the different resources of your app.
Expand Down
84 changes: 78 additions & 6 deletions docs/fundamentals/setup-tooling.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: .NET Aspire tooling
description: Learn about essential tooling concepts for .NET Aspire.
ms.date: 02/24/2025
ms.date: 03/11/2025
zone_pivot_groups: dev-environment
uid: dotnet/aspire/setup-tooling
---
Expand All @@ -17,7 +17,7 @@ uid: dotnet/aspire/setup-tooling
> - Install .NET Aspire integrations
> - Work with the .NET Aspire dashboard

## Install .NET Aspire
## Install .NET Aspire prerequisites

To work with .NET Aspire, you need the following installed locally:

Expand Down Expand Up @@ -58,6 +58,82 @@ To install the .NET Aspire workload in Visual Studio 2022, use the Visual Studio

:::zone-end

## .NET Aspire templates

.NET Aspire provides a set of solution and project templates. These templates are available in your favorite .NET developer integrated environment. You can use these templates to create full .NET Aspire solutions, or add individual projects to existing .NET Aspire solutions.

### Install the .NET Aspire templates

:::zone pivot="visual-studio"

To install the .NET Aspire templates in Visual Studio, you need to manually install them unless you're using Visual Studio 17.12 or later. For Visual Studio 17.9 to 17.11, follow these steps:

1. Open Visual Studio.
1. Go to **Tools** > **NuGet Package Manager** > **Package Manager Console**.
1. Run the following command to install the templates:

```dotnetcli
dotnet new install Aspire.ProjectTemplates
```

For Visual Studio 17.12 or later, the .NET Aspire templates are installed automatically.

:::zone-end
:::zone pivot="vscode,dotnet-cli"

To install these templates, use the [dotnet new install](/dotnet/core/tools/dotnet-new-install) command, passing in the `Aspire.ProjectTemplates` NuGet identifier.

```dotnetcli
dotnet new install Aspire.ProjectTemplates
```

To install a specific version, append the version number to the package name:

```dotnetcli
dotnet new install Aspire.ProjectTemplates::9.0.0
```

> [!TIP]
> If you already have the .NET Aspire workload installed, you need to pass the `--force` flag to overwrite the existing templates. Feel free to uninstall the .NET Aspire workload.

:::zone-end

### List the .NET Aspire templates

:::zone pivot="visual-studio"

The .NET Aspire templates are installed automatically when you install Visual Studio 17.9 or later. To see what .NET Aspire templates are available, select **File** > **New** > **Project** in Visual Studio, and search for "Aspire" in the search bar (<kbd>Alt</kbd>+<kbd>S</kbd>). You'll see a list of available .NET Aspire project templates:

:::image type="content" source="media/vs-create-dotnet-aspire-proj.png" alt-text="Visual Studio: Create new project and search for 'Aspire'." lightbox="media/vs-create-dotnet-aspire-proj.png":::

:::zone-end
:::zone pivot="vscode"

To view the available templates in Visual Studio Code with the C# DevKit installed, select the **Create .NET Project** button when no folder is opened in the **Explorer** view:

:::image type="content" source="media/vscode-create-dotnet-proj.png" alt-text="Visual Studio Code: Create .NET Project button." lightbox="media/vscode-create-dotnet-proj.png":::

Then, search for "Aspire" in the search bar to see the available .NET Aspire project templates:

:::image type="content" source="media/vscode-create-dotnet-aspire-proj.png" alt-text="Visual Studio Code: Create new project and search for 'Aspire'." lightbox="media/vscode-create-dotnet-aspire-proj.png":::

:::zone-end
:::zone pivot="dotnet-cli"

To verify that the .NET Aspire templates are installed, use the [dotnet new list](/dotnet/core/tools/dotnet-new-list) command, passing in the `aspire` template name:

```dotnetcli
dotnet new list aspire
```

Your console output should look like the following:

[!INCLUDE [dotnet-new-list-aspire-output](includes/dotnet-new-list-aspire-output.md)]

:::zone-end

For more information, see [.NET Aspire templates](aspire-sdk-templates.md).

## Container runtime

.NET Aspire projects are designed to run in containers. You can use either Docker Desktop or Podman as your container runtime. [Docker Desktop](https://www.docker.com/products/docker-desktop/) is the most common container runtime. [Podman](https://podman.io/docs/installation) is an open-source daemonless alternative to Docker, that can build and run Open Container Initiative (OCI) containers. If your host environment has both Docker and Podman installed, .NET Aspire defaults to using Docker. You can instruct .NET Aspire to use Podman instead, by setting the `DOTNET_ASPIRE_CONTAINER_RUNTIME` environment variable to `podman`:
Expand All @@ -80,10 +156,6 @@ For more information, see [Install Podman on Windows](https://podman.io/docs/ins

---

## .NET Aspire templates

.NET Aspire provides a set of solution and project templates. These templates are available in your favorite .NET developer integrated environment. You can use these templates to create full .NET Aspire solutions, or add individual projects to existing .NET Aspire solutions. For more information, see [.NET Aspire templates](aspire-sdk-templates.md).

## .NET Aspire dashboard

.NET Aspire templates that expose the [app host](app-host-overview.md) project also include a useful developer [dashboard](dashboard/overview.md) that's used to monitor and inspect various aspects of your app, such as logs, traces, and environment configurations. This dashboard is designed to improve the local development experience and provides an overview of the overall state and structure of your app.
Expand Down
2 changes: 1 addition & 1 deletion docs/includes/dotnet-cli-file-new.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
If you haven't already installed the [.NET Aspire templates](../fundamentals/aspire-sdk-templates.md#install-the-net-aspire-templates), run the following `dotnet new install` command:
If you haven't already installed the [.NET Aspire templates](../fundamentals/setup-tooling.md#install-the-net-aspire-templates), run the following `dotnet new install` command:

```dotnetcli
dotnet new install Aspire.ProjectTemplates
Expand Down
5 changes: 1 addition & 4 deletions docs/index.yml
Original file line number Diff line number Diff line change
Expand Up @@ -180,7 +180,7 @@ conceptualContent:
url: frameworks/dapr.md
- itemType: sample
text: Dapr integration sample
url: /samples/dotnet/aspire-samples/aspire-dapr/
url: https://github.com/CommunityToolkit/Aspire/tree/main/examples/dapr

- title: Deployment
links:
Expand Down Expand Up @@ -247,9 +247,6 @@ conceptualContent:
- itemType: training
text: Send messages with RabbitMQ in a .NET Aspire project
url: /training/modules/send-messages-rabbitmq-dotnet-aspire-app/
- itemType: architecture
text: .NET Aspire Credential (Applied Skill)
url: /credentials/applied-skills/build-distributed-apps-with-dotnet-aspire/

additionalContent:
sections:
Expand Down
4 changes: 1 addition & 3 deletions docs/toc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -194,7 +194,7 @@ items:
- name: Overview
href: frameworks/dapr.md
- name: Dapr integration sample
href: /samples/dotnet/aspire-samples/aspire-dapr/
href: https://github.com/CommunityToolkit/Aspire/tree/main/examples/dapr
- name: Elasticsearch
displayName: elasticsearch,search
href: search/elasticsearch-integration.md
Expand Down Expand Up @@ -419,8 +419,6 @@ items:
items:
- name: .NET Aspire
href: https://github.com/dotnet/aspire
- name: .NET Aspire Credential
href: /credentials/applied-skills/build-distributed-apps-with-dotnet-aspire/
- name: .NET Aspire samples
href: https://github.com/dotnet/aspire-samples
- name: .NET Aspire samples browser
Expand Down
2 changes: 1 addition & 1 deletion quest-config.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"AzureDevOps": {
"Org": "msft-skilling",
"Project": "Content",
"AreaPath": "Production\\Digital and App Innovation\\DotNet and more\\dotnet"
"AreaPath": "Production\\Core AI\\DotNet and more\\dotnet"
},
"ImportTriggerLabel": ":world_map: reQUEST",
"ImportedLabel": ":pushpin: seQUESTered",
Expand Down
Loading