Trax
Trax is a .NET framework for structuring business logic as typed pipelines. Each pipeline is a sequence of junctions where every junction has one job, typed input and output, and errors short-circuit automatically. Your configuration lives in Program.cs, your logic lives in pipelines.
New here? Start with the Getting Started guide.
The vocabulary
The website calls them "pipelines." The code calls them "trains." Same thing, different name — the entire framework uses a train metaphor:
| Term | What it means |
|---|---|
| Train | A pipeline — follows a route, always stays on the tracks, always reaches a destination |
| Route | The path a train follows — a sequence of junctions (IRoute<TIn, TOut>) |
| Junction | A point on the route where work happens (Junction<TIn, TOut>). The train either continues right (success) or switches left (failure) |
| Right track | Success path — the train continues to the next junction |
| Left track | Failure path — the train bypasses remaining junctions and arrives with the exception |
| Memory | The cargo the train carries between junctions, wired automatically by type |
| ServiceTrain | A Train with equipment bolted on — execution tracking, logging, lifecycle management |
A train never leaves the rails. It always reaches a destination — either the intended output (right) or an exception (left). You'll see these terms throughout the docs and the API surface.
Use only what you need
Each package adds one layer of capability. Stop at whatever layer solves your problem.
| Layer | What it adds |
|---|---|
| Core | Typed pipelines, error propagation, compile-time analyzer |
| Effect | Execution metadata, dependency injection, pluggable effect providers |
| Mediator | Decoupled dispatch — route by input type instead of direct injection |
| Scheduling | Cron/interval scheduling, retries, dead-letter handling, job dependencies |
| API | Auto-generated GraphQL via HotChocolate |
| Dashboard | Blazor monitoring UI that mounts into your existing app |
Where to go
- Getting Started — hands-on code from Core-only to full stack
- Samples & Deployment — project structure and deployment topologies
- SDK Reference — method-level documentation for every public API