Samples for Aspire.
Aspire is a developer-first toolset that streamlines integrating front-ends, APIs, containers, and databases with your apps. Learn more about Aspire here.
| Sample Name | Languages Used | Technologies Used | Description |
|---|---|---|---|
| Aspire Shop | C# | ASP.NET Core, Redis, PostgreSQL, Containers | Distributed e-commerce sample app demonstrating Aspire integration. |
| Integrating a Node.js App | JavaScript, C# | Node.js | Example of integrating a Node.js backend with Aspire. |
| Integrating Frontend Apps | JavaScript, TypeScript, C# | React, Vue, Angular | Demonstrates integration of popular frontend frameworks such as React, Vue, etc. |
| Integrating Python Apps | Python, JavaScript | FastAPI, React | Example of integrating a FastAPI backend and a JavaScript frontend with Aspire. |
| Integrating a Go App | Go | Gin, Containers | Shows how to add a Go Gin app being built via Dockerfile to Aspire. |
| Integrating Orleans | C# | Orleans | Sample for distributed actor model integration with Orleans. |
| Persisting Data with Volume Mounts | C# | Containers, Azure Storage, SQL Server | Demonstrates using volume mounts for data persistence in containers. |
| Working with Database Containers | C#, SQL | PostgreSQL, MongoDB, SQL Server | Shows how to initialize and use database containers. |
| Running EF Core Migrations | C# | ASP.NET Core, Entity Framework Core | Example of running Entity Framework Core migrations in Aspire apps. |
| Integrating Client Apps | C# | Windows Forms, WPF | Demonstrates integration of Windows client apps using Windows Forms or WPF. |
| Custom Metrics Visualization | C# | Prometheus, Grafana | Shows how to collect and visualize custom metrics using Grafana. |
| Standalone Aspire dashboard | C# | Aspire Dashboard | Demonstrates using the standalone Aspire dashboard container to visualize OpenTelemetry from any application. |
| Custom Aspire hosting resources | C# | Aspire AppHost | Demonstrates authoring custom hosting resources with Aspire. |
| HealthChecksUI | C# | ASP.NET Core, Containers, Docker Compose | Demonstrates resources with separate isolated endpoints for health checks. |
| Azure Functions | C# | ASP.NET Core, Blazor, Azure Functions, Azure Blob Storage | Shows how to integrate Azure Functions with Aspire. |
eShop is a reference application implementing an eCommerce web site on a services-based architecture using Aspire.
These samples are licensed under the MIT license.
The sample applications provided in this repository are intended to illustrate individual concepts that may be beneficial in understanding the underlying technology and its potential uses. These samples may not illustrate best practices for production environments.
The code is not intended for operational deployment. Users should exercise caution and not rely on the samples as a foundation for any commercial or production use.
See the following links for more information on best practices and security considerations when hosting applications:
We welcome contributions to this repository of samples related to official Aspire features and integrations (i.e. those pieces whose code lives in the Aspire repo and that ship from the Aspire NuGet account). It's generally a good idea to log an issue first to discuss any idea for a sample with the team before sending a pull request.
This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information, see the .NET Foundation Code of Conduct.
This repository includes a devcontainer configuration to help you quickly set up a development environment using Visual Studio Code and GitHub Codespaces.
-
Install Visual Studio Code: If you haven't already, download and install Visual Studio Code.
-
Install Dev Containers extension: Open Visual Studio Code and go to the Extensions view by clicking on the Extensions icon in the Activity Bar on the side of the window. Search for "Dev Containers" and install the extension.
-
Clone the repository: Clone this repository to your local machine.
-
Open the repository in Visual Studio Code: Open Visual Studio Code and use the
File > Open Foldermenu to open the folder where you cloned this repository. -
Reopen in Container: Once the repository is open, you should see a notification prompting you to reopen the folder in a container. Click the "Reopen in Container" button. If you don't see the notification, you can also use the
Remote-Containers: Reopen in Containercommand from the Command Palette (Ctrl+Shift+P).
-
Open the repository on GitHub: Navigate to this repository on GitHub.
-
Create a Codespace: Click the "Code" button and then click the "Open with Codespaces" tab. Click the "New codespace" button to create a new Codespace.
-
Wait for the Codespace to start: GitHub will set up a new Codespace with the devcontainer configuration defined in this repository. This may take a few minutes.
-
Start coding: Once the Codespace is ready, you can start coding directly in your browser or open the Codespace in Visual Studio Code.
The devcontainer configuration includes all the necessary tools and dependencies to run the samples in this repository. You can start coding and running the samples without having to install anything else on your local machine.