Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork21
Reactor is a dynamic, concurrent, dependency resolving saga orchestrator.
ash-project/reactor
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Reactor is a dynamic, concurrent, dependency resolving saga orchestrator.
Woah. That's a lot. Let's break it down:
- Saga orchestrator Asaga is a way of providingtransaction-like semantics across multiple distinct resources.
- Dependency resolving reactor allows you to describe the dependenciesbetween your saga steps usingarguments which are converted into aDAG and used to compute execution order.
- Concurrent unless otherwise specified reactor will run as many steps aspossible concurrently whilst taking into account the results of the dependencyresolution.
- Dynamic whilst you can define a reactor statically using our awesome DSL,you can also build workflows dynamically - and even add steps while thereactor is running.
Thanks toAlembic Pty Ltd for sponsoring a portion ofthis project's development.
Reactor contains an igniter installer, so if you have igniter installed already you can runmix igniter.install reactor to add Reactor to your app.
The package can be installed by addingreactor to your list of dependencies inmix.exs:
defdepsdo[{:reactor,"~> 0.17.0"}]end
Our documentation is organized to help you find exactly what you need:
Step-by-step guides that teach Reactor through hands-on practice:
- Getting Started - Build your first Reactor
- Recursive Execution - Advanced iterative patterns
Practical solutions for real-world scenarios:
- Payment Processing - E-commerce workflows
- Data Pipelines - ETL orchestration
- Testing Strategies - Testing approaches
Complete technical reference:
- DSL Documentation - Complete DSL syntax (auto-generated)
- HexDocs - Generated API documentation
- Latest (main branch) - Development docs
Conceptual guides about how and why Reactor works:
- Core Concepts - Sagas, DAGs, compensation
- Architecture - Internal design
- Ecosystem - Integration patterns
Quick Start: New to Reactor? Start with theGetting Started tutorial!
- To contribute updates, fixes or new features please fork and open apull-request against
main. - Please useconventionalcommits - this allows us todynamically generate the changelog.
- Feel free to ask any questions on the
#reactorchannel on theAshDiscord.
reactor is licensed under the terms of theMITlicense. See theLICENSE file in thisrepositoryfor details.
About
Reactor is a dynamic, concurrent, dependency resolving saga orchestrator.
Topics
Resources
Code of conduct
Contributing
Security policy
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Sponsor this project
Uh oh!
There was an error while loading.Please reload this page.
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors15
Uh oh!
There was an error while loading.Please reload this page.

