⚙️ Cirious Codex Config
Robust Configuration Management Framework
📖 Overview
Cirious Codex Config is a highly optimized foundational library designed as a complete Configuration Management Framework.
It provides a rich, generic envelope around application settings, guaranteeing that configuration loading, parsing, and validation—whether from files, environment variables, or other sources—is handled securely and reliably.
Designed to be the immutable bedrock for configuration handling within the Cirious ecosystem, prioritizing maximum observability, flexible deserialization via serde, and a flawless developer experience.
🚀 Quick Start
Add the following to your Cargo.toml:
[]
= "0.2.0"
And then in your code:
use ;
use Deserialize;
🚧 Current Status & Roadmap
✅ v0.1.0 — Initial Release
- Support for multiple configuration formats (JSON, TOML, YAML).
- Environment variable overrides.
- Robust validation and error tracking using
cirious_codex_result. - Integrate optional feature for terminal color support with
cirious_codex_term.
✅ v0.2.0 — Implemented
- Hierarchical Env Vars: Map nested environment variables to structs.
- Live Reloading: Hot-reload configurations via file system watches.
- Advanced Merge: Deep merge nested configs across multiple sources.
- CLI Integration: Override configurations via command-line arguments.
- Secrets Management: Securely resolve encrypted secrets and vaults.
🔭 v0.3.0 — Production Readiness & Governance
- Schema Validation: Implement automatic JSON Schema generation from Rust structs to enable IDE autocompletion and early validation.
- Semantic Validation: Introduce declarative validation attributes (e.g., #[codex(min = 1, max = 100)]) to ensure configuration values are logically sound.
- Distributed Providers: Add support for remote configuration fetching via Etcd or Consul, ideal for cloud-native microservices.
- Audit & Debug Dumps: Implement secure export of resolved configuration state (with automatic sensitive data masking) for production troubleshooting.
- Config Linting CLI: Release a companion tool codex-lint to scan projects for missing environment variables or configuration conflicts.
- Tracing & Observability: Integrate tracing to emit structured logs regarding the origin and resolution lifecycle of every configuration key.
📜 License
Licensed under either of the following, at your option: