CommunityToolkit.Aspire.Hosting.NodeJS.Extensions
9.7.2-beta.359
Prefix Reserved
See the version list below for details.
dotnet add package CommunityToolkit.Aspire.Hosting.NodeJS.Extensions --version 9.7.2-beta.359
NuGet\Install-Package CommunityToolkit.Aspire.Hosting.NodeJS.Extensions -Version 9.7.2-beta.359
<PackageReference Include="CommunityToolkit.Aspire.Hosting.NodeJS.Extensions" Version="9.7.2-beta.359" />
<PackageVersion Include="CommunityToolkit.Aspire.Hosting.NodeJS.Extensions" Version="9.7.2-beta.359" />
<PackageReference Include="CommunityToolkit.Aspire.Hosting.NodeJS.Extensions" />
paket add CommunityToolkit.Aspire.Hosting.NodeJS.Extensions --version 9.7.2-beta.359
#r "nuget: CommunityToolkit.Aspire.Hosting.NodeJS.Extensions, 9.7.2-beta.359"
#:package CommunityToolkit.Aspire.Hosting.NodeJS.Extensions@9.7.2-beta.359
#addin nuget:?package=CommunityToolkit.Aspire.Hosting.NodeJS.Extensions&version=9.7.2-beta.359&prerelease
#tool nuget:?package=CommunityToolkit.Aspire.Hosting.NodeJS.Extensions&version=9.7.2-beta.359&prerelease
CommunityToolkit.Aspire.Hosting.NodeJS.Extensions library
This integration contains extensions for the Node.js hosting package for .NET Aspire, including support for alternative package managers (yarn and pnpm), frontend monorepos (Nx, Turborepo), as well as developer workflow improvements.
Getting Started
Install the package
In your AppHost project, install the package using the following command:
dotnet add package CommunityToolkit.Aspire.Hosting.NodeJS.Extensions
Example usage
Then, in the Program.cs file of AppHost
, define a Node.js resource, then call AddYarnApp
or AddPnpmApp
:
builder.AddYarnApp("yarn-demo")
.WithExternalHttpEndpoints();
builder.AddPnpmApp("pnpm-demo")
.WithExternalHttpEndpoints();
Frontend Monorepo Support
For Nx and Turborepo monorepos, use the dedicated monorepo methods to avoid package installation race conditions:
// Nx workspace
var nx = builder.AddNxApp("nx", workingDirectory: "../frontend")
.WithNpmPackageInstaller()
.RunWithPackageManager(); // Automatically uses npm from installer
var app1 = nx.AddApp("app1");
var app2 = nx.AddApp("app2", appName: "my-app-2");
// Turborepo workspace
var turbo = builder.AddTurborepoApp("turbo", workingDirectory: "../frontend")
.WithYarnPackageInstaller()
.RunWithPackageManager("yarn"); // Explicitly specify yarn
var turboApp1 = turbo.AddApp("app1");
var turboApp2 = turbo.AddApp("app2", filter: "custom-filter");
See MONOREPO.md for detailed documentation on monorepo support.
Configuring Package Manager for Monorepos
The RunWithPackageManager()
method configures which package manager command is used when running individual apps in Nx or Turborepo workspaces:
// Auto-infer from package installer
var nx = builder.AddNxApp("nx", workingDirectory: "../frontend")
.WithYarnPackageInstaller()
.RunWithPackageManager(); // Uses 'yarn' command
// Explicitly specify package manager
var turbo = builder.AddTurborepoApp("turbo", workingDirectory: "../frontend")
.WithNpmPackageInstaller()
.RunWithPackageManager("pnpm"); // Uses 'pnpm' command despite npm installer
// Generated commands:
// Nx with yarn: yarn nx serve app1
// Turborepo with pnpm: pnpm turbo run dev --filter app1
Package installation with custom flags
You can pass additional flags to package managers during installation:
// npm with legacy peer deps support
builder.AddNpmApp("npm-app", "./path/to/app")
.WithNpmPackageInstallation(useCI: false, configureInstaller =>
{
configureInstaller.WithArgs("--legacy-peer-deps");
})
.WithExternalHttpEndpoints();
// yarn with frozen lockfile
builder.AddYarnApp("yarn-app", "./path/to/app")
.WithYarnPackageInstallation(configureInstaller =>
{
configureInstaller.WithArgs("--frozen-lockfile", "--verbose");
})
.WithExternalHttpEndpoints();
// pnpm with frozen lockfile
builder.AddPnpmApp("pnpm-app", "./path/to/app")
.WithPnpmPackageInstallation(configureInstaller =>
{
configureInstaller.WithArgs("--frozen-lockfile");
})
.WithExternalHttpEndpoints();
Additional Information
https://learn.microsoft.com/dotnet/aspire/community-toolkit/hosting-nodejs-extensions
Feedback & contributing
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- Aspire.Hosting (>= 9.4.1)
- Aspire.Hosting.NodeJS (>= 9.4.1)
-
net9.0
- Aspire.Hosting (>= 9.4.1)
- Aspire.Hosting.NodeJS (>= 9.4.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on CommunityToolkit.Aspire.Hosting.NodeJS.Extensions:
Repository | Stars |
---|---|
davidfowl/aspire-ai-chat-demo
Aspire AI Chat is a full-stack chat sample that combines modern technologies to deliver a ChatGPT-like experience.
|
Version | Downloads | Last Updated |
---|---|---|
9.7.2-beta.362 | 0 | 8/29/2025 |
9.7.2-beta.361 | 0 | 8/29/2025 |
9.7.2-beta.360 | 0 | 8/29/2025 |
9.7.2-beta.359 | 7 | 8/28/2025 |
9.7.2-beta.358 | 11 | 8/28/2025 |
9.7.2-beta.357 | 12 | 8/28/2025 |
9.7.1 | 31 | 8/27/2025 |
9.7.1-beta.355 | 15 | 8/27/2025 |
9.7.1-beta.354 | 10 | 8/27/2025 |
9.7.1-beta.353 | 10 | 8/27/2025 |
9.7.1-beta.352 | 10 | 8/27/2025 |
9.7.1-beta.351 | 11 | 8/27/2025 |
9.7.1-beta.348 | 247 | 8/14/2025 |
9.7.1-beta.344 | 110 | 8/10/2025 |
9.7.1-beta.343 | 205 | 8/8/2025 |
9.7.1-beta.342 | 200 | 8/7/2025 |
9.7.1-beta.341 | 193 | 8/6/2025 |
9.7.1-beta.340 | 192 | 8/5/2025 |
9.7.1-beta.339 | 178 | 8/5/2025 |
9.7.0 | 5,524 | 8/1/2025 |
9.7.0-beta.337 | 78 | 8/1/2025 |
9.7.0-beta.336 | 90 | 8/1/2025 |
9.7.0-beta.335 | 82 | 8/1/2025 |
9.7.0-beta.333 | 97 | 7/30/2025 |
9.6.1-beta.332 | 90 | 7/30/2025 |
9.6.1-beta.331 | 90 | 7/30/2025 |
9.6.1-beta.330 | 92 | 7/30/2025 |
9.6.1-beta.329 | 91 | 7/30/2025 |
9.6.1-beta.328 | 92 | 7/29/2025 |
9.6.1-beta.327 | 92 | 7/28/2025 |
9.6.1-beta.326 | 90 | 7/28/2025 |
9.6.0 | 6,083 | 7/10/2025 |
9.6.0-beta.324 | 116 | 7/10/2025 |
9.5.1-beta.323 | 117 | 7/10/2025 |
9.5.1-beta.322 | 113 | 7/10/2025 |
9.5.1-beta.321 | 117 | 7/10/2025 |
9.5.1-beta.320 | 124 | 7/9/2025 |
9.5.1-beta.319 | 122 | 7/8/2025 |
9.5.1-beta.318 | 157 | 7/2/2025 |
9.5.1-beta.317 | 156 | 6/30/2025 |
9.5.1-beta.315 | 313 | 6/26/2025 |
9.5.1-beta.314 | 132 | 6/23/2025 |
9.5.1-beta.313 | 107 | 6/20/2025 |
9.5.1-beta.312 | 111 | 6/20/2025 |
9.5.1-beta.311 | 152 | 6/18/2025 |
9.5.1-beta.310 | 131 | 6/17/2025 |
9.5.1-beta.309 | 121 | 6/17/2025 |
9.5.1-beta.308 | 150 | 6/17/2025 |
9.5.1-beta.307 | 118 | 6/16/2025 |
9.5.1-beta.306 | 353 | 6/11/2025 |
9.5.1-beta.305 | 108 | 6/7/2025 |
9.5.1-beta.304 | 115 | 6/6/2025 |
9.5.1-beta.303 | 128 | 6/4/2025 |
9.5.1-beta.302 | 124 | 6/4/2025 |
9.5.1-beta.301 | 135 | 6/2/2025 |
9.5.1-beta.300 | 139 | 5/28/2025 |
9.5.0 | 16,086 | 5/27/2025 |
9.5.0-beta.299 | 137 | 5/27/2025 |
9.5.0-beta.298 | 142 | 5/26/2025 |
9.5.0-beta.297 | 90 | 5/24/2025 |
9.5.0-beta.296 | 88 | 5/24/2025 |
9.5.0-beta.295 | 50 | 5/24/2025 |
9.4.1-beta.291 | 161 | 5/19/2025 |
9.4.1-beta.289 | 165 | 5/16/2025 |
9.4.1-beta.288 | 207 | 5/16/2025 |
9.4.1-beta.287 | 199 | 5/16/2025 |
9.4.1-beta.286 | 199 | 5/16/2025 |
9.4.1-beta.285 | 260 | 5/14/2025 |
9.4.1-beta.284 | 214 | 5/13/2025 |
9.4.1-beta.283 | 231 | 5/12/2025 |
9.4.1-beta.282 | 155 | 5/7/2025 |
9.4.1-beta.280 | 161 | 5/2/2025 |
9.4.1-beta.279 | 125 | 5/2/2025 |
9.4.1-beta.277 | 352 | 4/23/2025 |
9.4.1-beta.276 | 163 | 4/23/2025 |
9.4.1-beta.275 | 148 | 4/23/2025 |
9.4.1-beta.274 | 148 | 4/23/2025 |
9.4.1-beta.273 | 147 | 4/23/2025 |
9.4.1-beta.272 | 134 | 4/23/2025 |
9.4.1-beta.271 | 143 | 4/23/2025 |
9.4.1-beta.270 | 148 | 4/20/2025 |
9.4.0 | 25,172 | 4/20/2025 |
9.4.0-beta.269 | 142 | 4/20/2025 |
9.4.0-beta.268 | 138 | 4/20/2025 |
9.3.1-beta.267 | 142 | 4/20/2025 |
9.3.1-beta.266 | 75 | 4/19/2025 |
9.3.1-beta.265 | 209 | 4/15/2025 |
9.3.1-beta.264 | 172 | 4/15/2025 |
9.3.1-beta.263 | 184 | 4/15/2025 |
9.3.1-beta.262 | 173 | 4/15/2025 |
9.3.1-beta.260 | 186 | 4/10/2025 |
9.3.1-beta.259 | 159 | 4/8/2025 |
9.3.1-beta.258 | 147 | 4/8/2025 |
9.3.1-beta.257 | 148 | 4/8/2025 |
9.3.1-beta.256 | 151 | 4/8/2025 |
9.3.1-beta.255 | 147 | 4/8/2025 |
9.3.1-beta.254 | 147 | 4/8/2025 |
9.3.1-beta.253 | 148 | 4/1/2025 |
9.3.1-beta.252 | 128 | 3/27/2025 |
9.3.1-beta.250 | 129 | 3/27/2025 |
9.3.1-beta.249 | 122 | 3/27/2025 |
9.3.1-beta.248 | 125 | 3/27/2025 |
9.3.1-beta.247 | 127 | 3/27/2025 |
9.3.1-beta.244 | 479 | 3/25/2025 |
9.3.1-beta.242 | 465 | 3/24/2025 |
9.3.1-beta.241 | 137 | 3/19/2025 |
9.3.0 | 11,095 | 3/19/2025 |
9.3.0-beta.239 | 142 | 3/19/2025 |
9.2.2-beta.237 | 134 | 3/19/2025 |
9.2.2-beta.236 | 103 | 3/14/2025 |
9.2.2-beta.230 | 144 | 3/13/2025 |
9.2.2-beta.229 | 131 | 3/13/2025 |
9.2.2-beta.228 | 164 | 3/11/2025 |
9.2.2-beta.227 | 156 | 3/11/2025 |
9.2.2-beta.226 | 144 | 3/11/2025 |
9.2.2-beta.225 | 151 | 3/11/2025 |
9.2.2-beta.224 | 150 | 3/11/2025 |
9.2.2-beta.223 | 142 | 3/10/2025 |
9.2.2-beta.222 | 150 | 3/10/2025 |
9.2.2-beta.220 | 152 | 3/9/2025 |
9.2.2-beta.218 | 138 | 3/9/2025 |
9.2.2-beta.217 | 190 | 3/7/2025 |
9.2.2-beta.216 | 185 | 3/7/2025 |
9.2.2-beta.215 | 187 | 3/7/2025 |
9.2.2-beta.214 | 189 | 3/5/2025 |
9.2.2-beta.213 | 181 | 3/5/2025 |
9.2.2-beta.212 | 184 | 3/5/2025 |
9.2.2-beta.211 | 182 | 3/4/2025 |
9.2.2-beta.210 | 184 | 3/4/2025 |
9.2.2-beta.208 | 84 | 3/3/2025 |
9.2.1 | 3,836 | 3/3/2025 |
9.2.1-beta.207 | 114 | 3/2/2025 |
9.2.1-beta.206 | 78 | 3/1/2025 |
9.2.1-beta.205 | 83 | 2/27/2025 |
9.2.1-beta.204 | 70 | 2/26/2025 |
9.2.1-beta.203 | 72 | 2/26/2025 |
9.2.0 | 2,175 | 2/26/2025 |
9.2.0-beta.202 | 75 | 2/26/2025 |
9.2.0-beta.201 | 78 | 2/26/2025 |
9.2.0-beta.199 | 88 | 2/26/2025 |
9.2.0-beta.198 | 68 | 2/26/2025 |
9.1.1-beta.197 | 77 | 2/25/2025 |
9.1.1-beta.196 | 88 | 2/25/2025 |
9.1.1-beta.195 | 86 | 2/25/2025 |
9.1.1-beta.194 | 78 | 2/25/2025 |
9.1.1-beta.193 | 80 | 2/25/2025 |
9.1.1-beta.192 | 81 | 2/24/2025 |
9.1.1-beta.191 | 84 | 2/24/2025 |
9.1.1-beta.190 | 80 | 2/19/2025 |
9.1.1-beta.189 | 76 | 2/19/2025 |
9.1.1-beta.188 | 82 | 2/19/2025 |
9.1.1-beta.187 | 97 | 2/19/2025 |
9.1.1-beta.183 | 91 | 2/18/2025 |
9.1.1-beta.182 | 86 | 2/18/2025 |
9.1.1-beta.181 | 95 | 2/18/2025 |
9.1.1-beta.180 | 81 | 2/17/2025 |
9.1.1-beta.178 | 85 | 2/17/2025 |
9.1.1-beta.177 | 84 | 2/12/2025 |
9.1.1-beta.176 | 89 | 2/11/2025 |
9.1.1-beta.175 | 76 | 2/11/2025 |
9.1.1-beta.173 | 94 | 2/10/2025 |
9.1.1-beta.169 | 112 | 2/6/2025 |
9.1.1-beta.168 | 74 | 2/5/2025 |
9.1.1-beta.166 | 91 | 2/5/2025 |
9.1.1-beta.165 | 73 | 2/5/2025 |
9.1.1-beta.164 | 89 | 2/3/2025 |
9.1.1-beta.162 | 82 | 2/3/2025 |
9.1.1-beta.155 | 85 | 1/30/2025 |
9.1.1-beta.154 | 72 | 1/30/2025 |
9.1.1-beta.153 | 85 | 1/30/2025 |
9.1.1-beta.152 | 72 | 1/29/2025 |
9.1.1-beta.150 | 85 | 1/29/2025 |
9.1.1-beta.148 | 91 | 1/26/2025 |
9.1.1-beta.147 | 75 | 1/26/2025 |
9.1.1-beta.146 | 82 | 1/23/2025 |
9.1.1-beta.145 | 75 | 1/22/2025 |
9.1.1-beta.144 | 77 | 1/22/2025 |
9.1.1-beta.142 | 65 | 1/22/2025 |
9.1.1-beta.140 | 79 | 1/22/2025 |
9.1.1-beta.139 | 79 | 1/21/2025 |
9.1.1-beta.138 | 72 | 1/20/2025 |
9.1.1-beta.137 | 68 | 1/17/2025 |
9.1.1-beta.136 | 62 | 1/15/2025 |
9.1.1-beta.135 | 47 | 1/15/2025 |
9.1.1-beta.134 | 48 | 1/15/2025 |
9.1.1-beta.128 | 110 | 1/9/2025 |
9.1.1-beta.127 | 64 | 1/9/2025 |
9.1.1-beta.126 | 69 | 1/9/2025 |
9.1.1-beta.125 | 61 | 1/9/2025 |
9.1.1-beta.124 | 64 | 1/9/2025 |
9.1.0 | 11,668 | 12/12/2024 |
9.1.0-beta.123 | 79 | 1/3/2025 |
9.1.0-beta.122 | 84 | 1/3/2025 |
9.1.0-beta.121 | 86 | 1/2/2025 |
9.1.0-beta.120 | 78 | 12/30/2024 |
9.1.0-beta.119 | 78 | 12/30/2024 |
9.1.0-beta.118 | 80 | 12/30/2024 |
9.1.0-beta.116 | 86 | 12/30/2024 |
9.1.0-beta.114 | 81 | 12/30/2024 |
9.1.0-beta.113 | 77 | 12/30/2024 |
9.1.0-beta.112 | 77 | 12/18/2024 |
9.1.0-beta.110 | 82 | 12/16/2024 |
9.1.0-beta.109 | 76 | 12/12/2024 |
9.0.1-beta.108 | 81 | 12/12/2024 |
9.0.1-beta.107 | 76 | 12/11/2024 |
9.0.1-beta.106 | 81 | 12/12/2024 |
9.0.1-beta.104 | 76 | 12/11/2024 |
9.0.1-beta.102 | 86 | 12/6/2024 |
9.0.1-beta.99 | 80 | 12/6/2024 |
9.0.1-beta.98 | 82 | 12/6/2024 |
9.0.1-beta.95 | 73 | 12/5/2024 |
9.0.1-beta.94 | 75 | 12/5/2024 |
9.0.1-beta.93 | 79 | 12/2/2024 |
9.0.1-beta.92 | 86 | 11/30/2024 |
9.0.1-beta.91 | 84 | 11/30/2024 |
9.0.1-beta.90 | 88 | 11/29/2024 |
9.0.1-beta.89 | 74 | 11/29/2024 |
9.0.1-beta.88 | 72 | 11/27/2024 |
9.0.1-beta.87 | 74 | 11/27/2024 |
9.0.1-beta.86 | 78 | 11/27/2024 |
9.0.1-beta.84 | 83 | 11/24/2024 |
9.0.1-beta.83 | 79 | 11/22/2024 |
9.0.1-beta.82 | 78 | 11/21/2024 |
9.0.1-beta.81 | 71 | 11/19/2024 |
9.0.1-beta.80 | 74 | 11/19/2024 |
9.0.1-beta.79 | 73 | 11/19/2024 |
9.0.1-beta.77 | 725 | 11/15/2024 |
9.0.0 | 5,897 | 11/15/2024 |
9.0.0-beta.76 | 83 | 11/14/2024 |
9.0.0-beta.75 | 74 | 11/14/2024 |
9.0.0-beta.74 | 71 | 11/14/2024 |
9.0.0-beta.73 | 76 | 11/14/2024 |
9.0.0-beta.72 | 75 | 11/14/2024 |
9.0.0-beta.71 | 74 | 11/13/2024 |
9.0.0-beta.70 | 82 | 11/13/2024 |
9.0.0-beta.69 | 88 | 11/13/2024 |
9.0.0-beta.68 | 69 | 11/13/2024 |
9.0.0-beta.67 | 85 | 11/13/2024 |
9.0.0-beta.66 | 80 | 11/13/2024 |
9.0.0-beta.63 | 84 | 11/12/2024 |
9.0.0-beta.54 | 83 | 10/31/2024 |
9.0.0-beta.53 | 73 | 10/29/2024 |
8.3.0 | 412 | 10/29/2024 |
8.3.0-beta.51 | 75 | 10/29/2024 |
8.3.0-beta.50 | 79 | 10/28/2024 |
8.3.0-beta.49 | 77 | 10/28/2024 |
8.3.0-beta.48 | 74 | 10/28/2024 |
8.3.0-beta.47 | 78 | 10/28/2024 |
8.3.0-beta.46 | 90 | 10/27/2024 |
8.3.0-beta.45 | 75 | 10/25/2024 |
8.3.0-beta.44 | 107 | 10/25/2024 |
8.3.0-beta.43 | 78 | 10/25/2024 |
8.3.0-beta.42 | 77 | 10/24/2024 |
8.2.1 | 265 | 10/23/2024 |
8.2.1-beta.40 | 68 | 10/23/2024 |
8.2.1-beta.39 | 75 | 10/23/2024 |
8.2.1-beta.38 | 79 | 10/23/2024 |
8.2.1-beta.37 | 69 | 10/23/2024 |
8.2.1-beta.36 | 77 | 10/23/2024 |
8.2.1-beta.35 | 83 | 10/23/2024 |
8.2.0-beta.34 | 81 | 10/23/2024 |
8.2.0-beta.33 | 75 | 10/23/2024 |
8.2.0-beta.32 | 78 | 10/22/2024 |
1.0.0-beta.60 | 90 | 11/11/2024 |
1.0.0-beta.58 | 79 | 11/4/2024 |
1.0.0-beta.57 | 78 | 11/1/2024 |
1.0.0-beta.56 | 68 | 11/1/2024 |
1.0.0-beta.55 | 73 | 11/1/2024 |