BellaBaxter.Aspire.Host
0.1.1-preview.36
dotnet add package BellaBaxter.Aspire.Host --version 0.1.1-preview.36
NuGet\Install-Package BellaBaxter.Aspire.Host -Version 0.1.1-preview.36
<PackageReference Include="BellaBaxter.Aspire.Host" Version="0.1.1-preview.36" />
<PackageVersion Include="BellaBaxter.Aspire.Host" Version="0.1.1-preview.36" />
<PackageReference Include="BellaBaxter.Aspire.Host" />
paket add BellaBaxter.Aspire.Host --version 0.1.1-preview.36
#r "nuget: BellaBaxter.Aspire.Host, 0.1.1-preview.36"
#:package BellaBaxter.Aspire.Host@0.1.1-preview.36
#addin nuget:?package=BellaBaxter.Aspire.Host&version=0.1.1-preview.36&prerelease
#tool nuget:?package=BellaBaxter.Aspire.Host&version=0.1.1-preview.36&prerelease
BellaBaxter.Aspire.Host
Aspire hosting integration that spins up the full Bella Baxter infrastructure stack inside a local .NET Aspire AppHost: Postgres, Redis, Keycloak, OpenBao, and the Bella Baxter API — all as named Aspire resources.
Use this package when you want to run Bella locally without a deployed instance (local dev, integration tests).
For connecting to an already-deployed Bella instance, use BellaBaxter.Aspire.Configuration instead.
Installation
# AppHost project only
dotnet add package BellaBaxter.Aspire.Host
Quickstart
Minimal — Bella owns all its infrastructure
// AppHost Program.cs
var bella = builder.AddBellaBaxter("bella");
builder.AddProject<Projects.MyApi>("api")
.WithBellaSecrets(bella);
Bring your own Postgres + Redis
Share infrastructure with your own app to avoid running duplicate containers:
// AppHost Program.cs
var postgres = builder.AddPostgres("postgres")
.WithPgAdmin();
var redis = builder.AddRedis("redis")
.WithRedisCommander();
var bella = builder.AddBellaBaxter("bella",
postgres: postgres,
redis: redis);
builder.AddProject<Projects.MyApi>("api")
.WithBellaSecrets(bella);
What WithBellaSecrets injects
WithBellaSecrets(bella) injects environment variables into the target project so that
builder.Configuration.AddBellaSecrets() can connect automatically — no manual configuration needed:
| Variable | Value |
|---|---|
BellaBaxter__BaxterUrl |
Resolved endpoint of the Bella API Aspire resource |
BellaBaxter__EnvironmentSlug |
The environment slug passed to AddBellaBaxter |
BellaBaxter__ApiKey |
From the Aspire secret parameter |
Target project (the API service)
// Api/Program.cs
var builder = WebApplication.CreateBuilder(args);
// AddBellaSecrets reads from BellaBaxter__* env vars injected by WithBellaSecrets()
builder.Configuration.AddBellaSecrets();
When to use this vs BellaBaxter.Aspire.Configuration
| Package | Use when |
|---|---|
BellaBaxter.Aspire.Host (this) |
You want the full Bella stack running locally — no deployed Bella instance needed |
BellaBaxter.Aspire.Configuration |
You have a deployed Bella instance and just need Aspire to wire the connection URL into your services |
Resources added to the Aspire dashboard
When AddBellaBaxter is called, the following resources appear in the Aspire dashboard:
| Resource | Type | Purpose |
|---|---|---|
bella-postgres |
Container (Postgres) | Bella's database (or your shared Postgres) |
bella-redis |
Container (Redis) | Session cache + secrets hot-reload cache |
bella-keycloak |
Container (Keycloak) | Identity provider for Bella UI and API |
bella-openbao |
Container (OpenBao) | Default secrets backend |
bella-api |
Container (Bella API) | The Bella Baxter REST API |
| 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.2.0)
- Aspire.Hosting.Keycloak (>= 13.2.0-preview.1.26170.3)
- Aspire.Hosting.PostgreSQL (>= 13.2.0)
- Aspire.Hosting.Redis (>= 13.2.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 |
|---|---|---|
| 0.1.1-preview.36 | 0 | 3/30/2026 |
| 0.1.1-preview.35 | 0 | 3/30/2026 |
| 0.1.1-preview.34 | 0 | 3/30/2026 |
| 0.1.1-preview.33 | 0 | 3/30/2026 |
| 0.1.1-preview.32 | 0 | 3/30/2026 |
| 0.1.1-preview.31 | 0 | 3/30/2026 |
| 0.1.1-preview.30 | 37 | 3/27/2026 |
| 0.1.1-preview.29 | 29 | 3/27/2026 |
| 0.1.1-preview.28 | 25 | 3/27/2026 |
| 0.1.1-preview.27 | 26 | 3/27/2026 |
| 0.1.1-preview.26 | 26 | 3/26/2026 |
| 0.1.1-preview.23 | 31 | 3/26/2026 |
| 0.1.1-preview.22 | 24 | 3/26/2026 |
| 0.1.1-preview.21 | 27 | 3/26/2026 |
| 0.1.1-preview.20 | 23 | 3/26/2026 |
| 0.1.1-preview.19 | 25 | 3/26/2026 |
| 0.1.1-preview.18 | 20 | 3/26/2026 |
| 0.1.1-preview.17 | 51 | 3/25/2026 |
| 0.1.1-preview.16 | 31 | 3/25/2026 |
| 0.1.1-preview.15 | 24 | 3/25/2026 |