Prerequisites

Four things on your machine, and nothing else: the databases, the broker and the mail catcher run in containers that the Starter starts for you.

ToolVersionWhy
.NET SDK10.0.100 or laterThe API, the identity host, the gateway and Aspire
Node.js22.22.3+ (22.x), 24.15+ or 26+The four Angular apps
npm10 or laterThe front-end workspace
DockerAny recent versionPostgreSQL, Redis, RabbitMQ and MailPit

.NET SDK

back/global.json asks for 10.0.100 and rolls forward to the newest feature band installed, so any .NET 10 SDK works — including the one from Ubuntu's or Microsoft's APT feed:

dotnet --version   # 10.0.100 or later

Node.js and npm

The range is the Angular CLI's own, declared in front/package.json. The CLI refuses anything older — 22.22.0 included.

Docker

Aspire pulls the images on the first run. Docker Hub limits anonymous pulls per address: if the first start stalls on toomanyrequests, run docker login, or point the daemon at a mirror in /etc/docker/daemon.json:

{ "registry-mirrors": ["https://mirror.gcr.io"] }

A trusted HTTPS development certificate

Every Blouppy service answers on HTTPS only — there is no HTTP profile — so the ASP.NET Core development certificate must exist and be trusted:

dotnet dev-certs https --trust
dotnet dev-certs https --check   # must report exactly one valid certificate

On Linux, --trust covers .NET, and the browsers reading the NSS database (Chromium, Firefox) only if certutil is installed (libnss3-tools). OpenSSL clients — the services calling each other, curl, Node — read the certificate from ~/.aspnet/dev-certs/trust, which you add to SSL_CERT_DIR in your shell profile:

export SSL_CERT_DIR="$HOME/.aspnet/dev-certs/trust:/usr/lib/ssl/certs"

More than one certificate is the usual cause of HTTPS errors on the first run — see Troubleshooting.