Picea.Abies.Conduit

May 1, 2026 ยท View on GitHub

Conduit is the Abies reference implementation of the RealWorld specification.

This project contains the core Conduit domain and read-model contracts used by the API, app logic, and hosts.

Project Layout

Conduit is split across several projects. Keep the domain model and read model contracts in this project, and keep host-specific behavior in host projects.

ProjectPurpose
Picea.Abies.ConduitDomain model and read-model contracts
Picea.Abies.Conduit.AppMVU application program, model, messages, commands, views
Picea.Abies.Conduit.ApiRealWorld REST API
Picea.Abies.Conduit.WasmBrowser WASM app entry point
Picea.Abies.Conduit.Wasm.HostASP.NET Core host for InteractiveWasm
Picea.Abies.Conduit.ServerASP.NET Core host for InteractiveServer
Picea.Abies.Conduit.AppHost.NET Aspire local orchestration
Picea.Abies.Conduit.Testing.E2EPlaywright end-to-end test suite

Running Locally

Run the full Conduit stack (API, database infrastructure, server host, wasm host, dashboard) through Aspire:

dotnet run --project Picea.Abies.Conduit.AppHost/Picea.Abies.Conduit.AppHost.csproj

API + WASM directly

Run API and WASM frontend in separate terminals:

# Terminal 1
dotnet run --project Picea.Abies.Conduit.Api --no-build --urls http://localhost:5179

# Terminal 2
dotnet run --project Picea.Abies.Conduit.Wasm --no-build

Optional: server host directly

dotnet run --project Picea.Abies.Conduit.Server

Test Strategy

Conduit follows layered testing.

LayerProjectFocus
Unit and integrationPicea.Abies.Conduit.TestsMVU transitions, routing, interpreter behavior
API integrationPicea.Abies.Conduit.Api.TestsEndpoint behavior and API contracts
Render-mode E2EPicea.Abies.Conduit.Testing.E2EUser journeys across WASM, server, static, and auto modes

Baseline commands:

dotnet test Picea.Abies.Conduit.Tests
dotnet test Picea.Abies.Conduit.Api.Tests
dotnet test Picea.Abies.Conduit.Testing.E2E/Picea.Abies.Conduit.Testing.E2E.csproj -c Debug -v minimal

All user journeys should be covered by integration tests and E2E tests.