The Universal Process Orchestrator (UPO) is a versatile and resilient framework for designing, executing, and managing workflows and processes across diverse domains. UPO enables seamless integration of systems, robust automation of processes, and distributed execution, making it the ultimate platform for orchestrating business logic, technical workflows, and data pipelines.
- Supports business workflows, technical integrations, and data movement.
- Handles loops, parallel branches, and decision points effortlessly.
- Execute processes across distributed environments.
- Support for remote execution of steps and subprocesses.
- Asynchronous execution of tasks and subprocesses.
- Seamless handling of long-running processes with built-in state management.
- Built-in resiliency patterns for retry, compensation, and failure recovery.
- Fault-tolerant design for high reliability.
- Easily integrate with external systems via APIs, SDKs, or custom connectors.
- Native support for popular communication protocols.
- Real-time monitoring and logging of process executions.
- Metrics and analytics dashboards for insights and debugging.
- Environment Requirements:
- Java 21+ or a supported runtime.
Create a config.yaml
file to configure the orchestrator. Example:
Processes can be defined using a simple YAML format or a graphical UI.
Invoke the defined process via API:
We welcome contributions! Follow these steps to contribute:
- Fork the repository.
- Create a feature branch (
git checkout -b feature-name
). - Commit your changes (
git commit -m "Add new feature"
). - Push to the branch (
git push origin feature-name
). - Create a pull request.
The Universal Process Orchestrator (UPO) is dual-licensed under:
-
GNU Affero General Public License v3.0 (AGPL-3.0): You may use this software under the terms of the AGPL-3.0 license. A copy of the license is available here.
-
Proprietary License: For enterprises or use cases that cannot comply with AGPL-3.0 obligations (e.g., sharing source code for modifications or SaaS deployments), a commercial license is available.
To obtain a commercial license, please contact us:
- Email: [email protected]
Unauthorized use outside of the AGPL-3.0 terms or without a commercial license is strictly prohibited.
For questions or support, contact:
- Email: [email protected]