Wayfinder.Engine.Journey
0.1.0
dotnet add package Wayfinder.Engine.Journey --version 0.1.0
NuGet\Install-Package Wayfinder.Engine.Journey -Version 0.1.0
<PackageReference Include="Wayfinder.Engine.Journey" Version="0.1.0" />
<PackageVersion Include="Wayfinder.Engine.Journey" Version="0.1.0" />
<PackageReference Include="Wayfinder.Engine.Journey" />
paket add Wayfinder.Engine.Journey --version 0.1.0
#r "nuget: Wayfinder.Engine.Journey, 0.1.0"
#:package Wayfinder.Engine.Journey@0.1.0
#addin nuget:?package=Wayfinder.Engine.Journey&version=0.1.0
#tool nuget:?package=Wayfinder.Engine.Journey&version=0.1.0
Wayfinder.Engine.Journey
A default, optional single-actor journey surface — server-rendered GOV.UK markup for "get my
current stage, advance it" against one blueprint. The applicant/citizen counterpart to
Wayfinder.Engine.Worklist's multi-item caseworker queue: one
actor, one instance, one page — no list, no pickup/putback, no separate advance sub-route.
Usage
builder.Services.AddJourney(options =>
{
options.ResolveTenantId = _ => "my-tenant";
options.ResolveAccessProfile = _ => MyActors.CitizenProfile();
options.RenderPage = (title, body, ctx) => PageShell.Render(title, body, ctx.User);
});
// ...
app.MapJourney("/apply", "my-blueprint-key", "Apply for a thing").RequireAuthorization("Applicant");
app.MapJourney("/premium", "another-blueprint-key", "Model a premium").RequireAuthorization("Applicant");
AddJourney is called once — the tenant/actor/page-chrome resolution is normally the same across
every journey a host maps. MapJourney is called once per blueprint a host wants a self-service
journey for, each with its own prefix, blueprintKey, and page title.
MapJourney maps three routes under prefix:
GET {prefix}— the current stage. AmbientGetCurrent, deliberately: an ordinary visit keeps showing a just-reached terminal stage forever (a returning citizen sees "Thank you", not a silently-reset blank form). Automatically renders a "Start a new one" link (customize the label viaMapJourney's own optionalstartNewLabelparameter) whenever the current response is genuinely terminal — no blueprint content authoring needed for it.POST {prefix}— advances it (POST-redirect-GET back to the same URL, so a reload or a second tab never resubmits a stalestateVersion).GET {prefix}/new— the distinct "start a new one" affordance the link above points at (IProcessManager.GetCurrentOrStartFresh): reinstates a still-in-progress instance rather than abandoning it, only actually starting fresh once the existing one is genuinely terminal.
Why a separate package from Wayfinder.Engine.Worklist
Same underlying building blocks (GovUkStageJourney's rendering/form-coercion,
Wayfinder.Engine.Http's file-upload handling, IProcessManager), but a genuinely different shape
— one instance per actor rather than a shared queue of many — so it gets its own package rather
than an awkward "worklist, but sometimes there's no list" branch inside that one.
| 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
- Wayfinder.Engine (>= 0.7.0)
- Wayfinder.Engine.Http (>= 0.1.0)
- Wayfinder.Rendering.GovUk (>= 0.3.1)
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.0 | 56 | 8/19/2026 |