Install locally with Aspire
Use Aspire for development and a local evaluation. Aspire starts the required services and lists their addresses; it is not the production deployment.
Prerequisites
- .NET SDK 10; the backend pin is in
src/backend/global.json. - Node.js 26.x, at least 26.10; check
src/frontend/.nvmrc. - pnpm 12.8.1. Node 26 does not include Corepack: install pnpm explicitly.
- A running Docker runtime for PostgreSQL, Mailpit, storage emulation and file scanning.
- Git; platform contributions and local CI also require an authenticated GitHub CLI.
Start the stack
git clone https://github.com/expertslive/omnia-platform.git
cd omnia-platform
npm install --global pnpm@12.8.1
./setup.sh
dotnet run --project src/aspire/Omnia.AppHost --launch-profile http
Use ./setup.ps1 on Windows. No separate Aspire workload
installation is required.
Verify the result
- Open the complete dashboard link printed in the console; its login token belongs to that local run.
- Wait for
migrateto finish successfully. - Check that
api,worker,webandadminare running. Open theadminaddress from Resources. - Check API readiness at
/health/ready. Use Mailpit to inspect local test messages. - Create a demo edition.
A fresh checkout runs the frontend installation automatically. Each checkout has its own database and storage volume. The default HTTP profile has a fixed dashboard port; concurrent stacks need separate ports.
Common problems
Port already in use: do not stop another stack without checking ownership. Identify the run belonging to your checkout or choose different dashboard, resource and telemetry ports.
Service exits with code 64: configuration is missing; the message identifies the setting. Code 75: a temporary startup prerequisite is missing, such as migrations.
No real login: local development sign-in grants development privileges. It does not demonstrate that production OIDC is correctly configured and must not be used as production authentication.