IEvangelist.Aspire.Hosting.Netlify
13.4.0
dotnet add package IEvangelist.Aspire.Hosting.Netlify --version 13.4.0
NuGet\Install-Package IEvangelist.Aspire.Hosting.Netlify -Version 13.4.0
<PackageReference Include="IEvangelist.Aspire.Hosting.Netlify" Version="13.4.0" />
<PackageVersion Include="IEvangelist.Aspire.Hosting.Netlify" Version="13.4.0" />
<PackageReference Include="IEvangelist.Aspire.Hosting.Netlify" />
paket add IEvangelist.Aspire.Hosting.Netlify --version 13.4.0
#r "nuget: IEvangelist.Aspire.Hosting.Netlify, 13.4.0"
#:package IEvangelist.Aspire.Hosting.Netlify@13.4.0
#addin nuget:?package=IEvangelist.Aspire.Hosting.Netlify&version=13.4.0
#tool nuget:?package=IEvangelist.Aspire.Hosting.Netlify&version=13.4.0
🚀 Aspire.Hosting.Netlify
Published to NuGet as
IEvangelist.Aspire.Hosting.Netlify— theAspire.*prefix is reserved by Microsoft, so this community integration ships under theIEvangelist.*prefix.
Deploy any JavaScript frontend to Netlify with three lines of C#.
A first-party-feeling Aspire integration that turns
aspire deployinto a one-command Netlify deploy — for Angular, Astro, Next.js, React, Svelte, Vue, and anything elseAddJavaScriptAppunderstands.
Quickstart
dotnet add package IEvangelist.Aspire.Hosting.Netlify
dotnet add package Aspire.Hosting.JavaScript
dotnet add package CommunityToolkit.Aspire.Hosting.JavaScript.Extensions
var builder = DistributedApplication.CreateBuilder(args);
builder.Pipeline.AddNetlifyDeployPipeline();
builder.AddJavaScriptApp("astro", "../astro")
.PublishAsNetlifySite("dist");
builder.Build().Run();
aspire run # boots the dev server alongside the dashboard
aspire deploy # builds and ships to Netlify
That's it. The pipeline finds the Netlify CLI (auto-installs if missing), resolves
your auth token (parameter > NETLIFY_AUTH_TOKEN > interactive ntl login), and
deploys the directory you point it at.
Why this integration?
- 🪄 Pipeline-aware. Hooks into Aspire's deploy pipeline, so
aspire deployis the one command. No bespoke shell scripts, no hand-rolled GitHub Actions. - 🟦 Multi-language. Annotated with the
Aspire Type System
so a TypeScript AppHost gets fully-typed
publishAsNetlifySite(...). - 🔐 Secret-safe auth. Tokens flow through
IResourceBuilder<ParameterResource>; Site IDs and tokens are redacted from logs. - 🌐 Six framework demos. Angular, Astro, Next.js, React, Svelte, and Vue
under
samples/. - 📦 OIDC-published. No long-lived NuGet API key — releases are published via Trusted Publishing on every tagged release.
Documentation
The full docs site lives at
https://ievangelist.github.io/netlify-aspire-integration/ and is
self-updating: every push to main rebuilds it from the markdown under
docs/ and the C# XML doc comments under
src/IEvangelist.Aspire.Hosting.Netlify/.
| 🚀 C# Quickstart | Drop the integration into a fresh C# AppHost. |
| 🟦 TypeScript Quickstart | Use the multi-language Aspire Type System surface. |
| 🛠️ Configuration | Every option on NetlifyDeployOptions. |
| 🔐 Authentication | Token precedence, secrets, and ntl login. |
| 🤖 CI/CD | OIDC publishing, Aspire Deploy, GitHub Actions. |
| 📚 API reference | Auto-generated from XML doc comments. |
Samples
Six framework demos plus two quickstarts live under samples/. Each
sample has its own README:
# Single-site quickstart (Astro + directory-only overload).
aspire run --apphost samples/Quickstart.AppHost/Quickstart.AppHost.csproj
# Six-framework demo.
aspire run --apphost samples/AllFrameworks.AppHost/AllFrameworks.AppHost.csproj
Contributing
Issues and PRs welcome on GitHub.
The codebase is straightforward: the integration lives in
src/IEvangelist.Aspire.Hosting.Netlify/, tests in
src/IEvangelist.Aspire.Hosting.Netlify.Tests/, samples
in samples/, and docs in docs/.
dotnet build # build everything
dotnet test # run the test suite (50+ tests)
aspire run # launch the AllFrameworks demo
License
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. 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. |
-
net10.0
- Aspire.Hosting (>= 13.4.0)
- Aspire.Hosting.JavaScript (>= 13.4.0)
- CliWrap (>= 3.9.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 13.4.0 | 173 | 6/2/2026 |
| 0.1.0-preview.1 | 63 | 5/5/2026 |