Confiiο
A comprehensive, production-ready configuration management library for Python.
Confii provides a unified interface for loading, merging, validating, and accessing configuration from multiple sources with enterprise-grade features like secret management, schema validation, observability, versioning, and async support.
Getting Startedο
Install Confii:
pip install confii
Load your first config:
from confii import Config
from confii.loaders import YamlLoader
config = Config(loaders=[YamlLoader("config.yaml")])
print(config.database.host)
Key Featuresο
Configuration Sources |
YAML, JSON, TOML, INI, .env, environment variables, AWS S3, Azure Blob, GCS, HTTP, Git |
Secret Management |
AWS Secrets Manager, HashiCorp Vault (9 auth methods), Azure Key Vault, GCP Secret Manager |
Type Safety |
|
Validation |
Pydantic and JSON Schema validation with defaults |
Dynamic Reloading |
File watching with incremental reload, on-change callbacks |
Merge Strategies |
6 strategies (replace, merge, append, prepend, intersection, union) with per-path overrides |
Introspection |
|
Versioning |
Save, compare, and rollback configuration versions |
Drift Detection |
Compare actual vs intended configuration |
Observability |
Access metrics, event emission, debug reports |
Async Support |
First-class async/await API |
CLI Tools |
validate, export, debug, explain, diff, migrate, lint, load |
Documentationο
User Guide
API Reference
Resources
Linksο
Source Code: GitHub
Package: PyPI
Issues: Bug Tracker