lib-layered-config
Cross-platform layered configuration loader for Python
Decision gist · record as of 2026-08-14
Yes. The package solves a real debugging pain point (configuration provenance) with a clean API, has low install friction, active maintenance, no known vulnerabilities, and a permissive license. It is worth installing if you need to track where configuration values come from or manage multi-layer config across platforms; skip it if your application has simple, single-source configuration.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later.
- Low install friction: pure Python wheel with four runtime dependencies (lib-cli-exit-tools, orjson, rich-click, rtoml).
- Active maintenance with a release 15 days ago; repository is not archived.
License · maintenance · safety
MIT (permissive) — MIT license (permissive); you can use, modify, and distribute this package freely in commercial or private projects with minimal restrictions.
last release 2026-07-30 (15 days) · last repo commit 2026-08-01 · 2 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 128,877 downloads/mo, #11,693 on PyPI
Alternatives
Verify before relying
from lib_layered_config import read_config
config = read_config(vendor="mycompany", appname="myapp")
value = config.get("service.timeout")
origin = config.origin("service.timeout")
print(f"Value: {value}, from: {origin}")- Whether the library's performance improvements from rtoml are measurable in typical application startup scenarios.
- How the immutability guarantee is enforced at runtime and whether it prevents all forms of accidental mutation.
What it is and what it does
lib_layered_config solves the problem of configuration authorship tracking. When a setting reaches your program through multiple sources—defaults, config files, environment variables, `.env` files—it becomes hard to debug which source won. This library deep-merges configuration from six layers (defaults, app, host, user, dotenv, environment) in a fixed precedence order and returns an immutable Config object that remembers exactly which layer and file each value came from. You can ask for a value and also ask where it came from, collapsing configuration debugging from a guessing game into a lookup.
The library handles cross-platform path discovery (Linux XDG, macOS, Windows), supports configuration profiles (separate trees for test, staging, production), and includes both a Python API and a CLI for reading, deploying, and scaffolding configs. It uses rtoml for fast TOML parsing and supports TOML, JSON, and optional YAML formats. The design keeps secrets out of committed files by letting environment variables and `.env` outrank file-based config, and it provides safe deployment with automatic backups and conflict handling.
Use it for
- Debug which configuration source set a value by calling config.origin("key.path") instead of tracing through multiple files and environment variables.
- Deploy configuration across test, staging, and production environments by selecting profiles without hand-merging separate environment setups.
- Scaffold and deploy configuration files to Linux, macOS, and Windows machines without hardcoding platform-specific paths like /etc/myapp/.
- Keep secrets out of version control by letting environment variables and .env files override committed config files automatically.
- Use the CLI to inspect, validate, or deploy configuration without writing Python code in deployment scripts.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
The package solves a real debugging pain point (configuration provenance) with a clean API, has low install friction, active maintenance, no known vulnerabilities, and a permissive license. It is worth installing if you need to track where configuration values come from or manage multi-layer config across platforms; skip it if your application has simple, single-source configuration.
Install
lib-layered-config on PyPI
Before you install
Low install friction: pure Python wheel with four runtime dependencies (lib-cli-exit-tools, orjson, rich-click, rtoml). Active maintenance with a release 15 days ago; repository is not archived.
Requires Python 3.10 or later.
License in practice
MIT license (permissive); you can use, modify, and distribute this package freely in commercial or private projects with minimal restrictions.
Quickstart
from lib_layered_config import read_config
config = read_config(vendor="mycompany", appname="myapp")
value = config.get("service.timeout")
origin = config.origin("service.timeout")
print(f"Value: {value}, from: {origin}")
Verify before relying
- Whether the library's performance improvements from rtoml are measurable in typical application startup scenarios.
- How the immutability guarantee is enforced at runtime and whether it prevents all forms of accidental mutation.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 4 packageslib-cli-exit-toolsorjsonrich-clickrtoml |
| Maintenance | Actively maintained 15 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 128,877 / month, #11,693 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | License :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Typing :: Typed |
Evidence: lib_layered_config-5.6.2-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “layered config loader”
- lib-layered-configLoads and merges configuration from multiple sources (defaults,…
- config-parserMerges configuration from YAML/JSON files, environment variables, and…
- configuratorBuilds a configuration store by layering multiple sources (files,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Software Development packages
Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.
See also config-parser · donfig · dynaconf · configurator · appdirs · typer-config · setoptconf-tmp · load-dotenv · dotenv · docker-squash