rototo
rototo is a Git-backed control plane for runtime configuration.
Configuration lives in a workspace: reviewable files in a Git repository. Applications load a workspace source, then resolve named variables for an environment and request-time context. rototo validates the workspace before it is used, evaluates qualifiers, selects the configured value, and validates schema-backed values before returning them to the application.
This keeps operational configuration changes out of application binaries while keeping review, history, and rollback in Git.
Install
Check the CLI:
CLI
A workspace is rooted at rototo-workspace.toml and contains variables,
qualifiers, and optional JSON Schemas. The repository includes a broad example
workspace under examples/basic.
Inspect and lint a workspace:
Resolve a variable for an environment and runtime context:
Resolve a named condition directly:
Workspace sources can be local paths, file://, git+file://,
git+https://, git+ssh://, or HTTPS archive URLs. Git sources support
#ref:subdir, and archive URLs support #:subdir.
Rust SDK
Applications use the SDK when configuration needs to be resolved in process:
use Error;
use ;
async
Long-running services can use RefreshingWorkspace to refresh from the same
workspace source while continuing to serve the last successfully loaded
workspace when a refresh fails.
Documentation
The CLI bundles the same documentation that is published on the project site:
Useful entry points:
rototo docs -p quickstartrototo docs -p production-workflowrototo docs -p rust-sdk-referencerototo docs -p cli-reference
Public documentation is also hosted at https://docs.rototo.pirogram.com.
Status
This is an alpha release. Public interfaces may change before a stability commitment.
License
Licensed under either of:
- Apache License, Version 2.0
- MIT license
at your option.