About Trax
What is Trax?
Trax is a .NET framework for Railway Oriented Programming. It lets you build business logic as composable, type-safe pipelines where errors are handled automatically — no more scattered try/catch blocks or null checks burying your intent.
The Train Metaphor
Trax uses a train metaphor throughout. A Train is a pipeline that follows a route — a sequence of Junctions where work happens. At each junction, the train either continues on the right track (success) or switches to the left track (failure). A train never leaves the rails — it always reaches a destination. Data flows between junctions as Memory. Scheduled jobs use Manifests, and the monitoring UI is the Control Room.
History
Trax started as ChainSharp, a single-repo project for chaining service operations. It was split into a multi-repo workspace and renamed to Trax to better reflect the railway-oriented design and the train metaphor that had become central to the project.
Open Source
Trax is fully open source under the MIT License. All packages are published on NuGet. Contributions, bug reports, and feature requests are welcome on GitHub.
Acknowledgements
Without the help and guidance of Mark Keaton, Spencer Elkington, and Douglas Seely this project would not have been possible.