StrataConf
A layered configuration library for Python. StrataConf merges configuration from three layers: defaults, configs and overrides. Each layer can have multiple sources with all sources and layers being maintained independently.
Features include:
- Includes via
includes:from files or published packages - Interpolation via
${...}using configuration paths or resolvers - Object instantiation via
_target_with typed coercion - Configuration of
argparsefrom YAML files to enable command-line overrides - Extracting field defaults from dataclass/Pydantic classes
- Overriding function parameter defaults via the
config_defaultsdecorator - Tracking actively-used configuration values
- Creating a unique fingerprint of a subset of configuration values
It is built on OmegaConf, with some changes to streamline usage (e.g., resolvers are not namespaced).
Documentation
Full documentation, including a user guide and API reference, is available at fastfedora.github.io/strataconf.
Install
pip install strataconf
Quick Start
from strataconf import Config
config = Config()
config.load_defaults("configs/defaults.yaml") # base layer
config.load_config("configs/config.yaml") # main layer, on top of defaults
config.add_overrides({"server": {"port": 9000}}) # highest-precedence layer
port = config.get("server.port") # merged + interpolated value
See the documentation for the full guide and API reference.
Development
uv sync
just test # run the test suite
just lint # ruff + pyright
just docs # preview the docs (Quarto)
License
MIT — see LICENSE.
Metadata
Release files for strataconf 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| strataconf-1.0.0.tar.gz | 155.9 kB | With provenance | Details for strataconf-1.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| strataconf-1.0.0-py3-none-any.whl | Python 3 | none | any | Details for strataconf-1.0.0-py3-none-any.whl |
Total release size: 199.9 kB
Release files / strataconf-1.0.0.tar.gz
| Download URL | strataconf-1.0.0.tar.gz |
|---|---|
| Size | 155.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a37ac509c831e8f653a8f51fd1060216350c9e742545808558a2f4804cdbb32d
|
|
BLAKE2b-256 checksum How to use checksums |
aa275076e3a00d82f2251e4908a7451246d50bee32e72a98dbde7bc9cb087860
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 1, 2026.
Transparency logRelease files / strataconf-1.0.0-py3-none-any.whl
| Download URL | strataconf-1.0.0-py3-none-any.whl |
|---|---|
| Size | 44.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
916f515046a1f2920661ec1e18bb9a774c1e77c43fcaf6a6d2dec12b3c28a44e
|
|
BLAKE2b-256 checksum How to use checksums |
5bf552c762053f8ed06dc635de0e01ac20a489db4cf634f6075f30b491acdf2d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 1, 2026.
Transparency logSecurity for strataconf 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for strataconf-1.0.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 1, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.