--- id: vyper-config version: "1.2.1" license: MIT license_treatment: permissive maintenance: dormant --- # vyper-config — Python configuration with (more) fangs License: permissive · Maintenance: dormant · Downloads: 110.4K/mo ## What it is and what it does Vyper is a configuration registry that consolidates settings from multiple sources into a single interface. It reads from JSON, TOML, and YAML files, environment variables, command-line arguments (via argparse), and optionally remote key-value stores, applying a fixed precedence order: explicit set calls override arguments, which override environment variables, which override config files, which override remote stores, which override defaults. The package handles case-insensitive key lookups, supports aliases to rename parameters without breaking existing code, and can watch configuration files for changes and automatically reload them while the application runs. The library is designed for 12-factor applications and modern Python services where configuration needs to be flexible and dynamic. It abstracts away the complexity of parsing different file formats and merging sources, letting developers focus on application logic rather than configuration plumbing. Four runtime dependencies (distconfig3, toml, PyYAML, watchdog) provide the underlying parsing and file-watching capabilities. Use it for: - Build a microservice that reads defaults from code, overrides from a YAML config file, and secrets from environment variables in a predictable order. - Implement live configuration reloading so a running application picks up changes to a TOML file without restart. - Create a CLI tool that accepts command-line arguments, environment variables, and a JSON config file, with clear precedence for which wins. - Set up a 12-factor application that sources configuration from environment variables with a prefix, falling back to defaults. - Use aliases to rename configuration keys across versions without breaking existing deployments that use the old names. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Vyper provides a unified configuration system for Python applications that reads from multiple sources—files (JSON, TOML, YAML), environment variables, command-line arguments, and remote stores—with support for live reloading and a clear precedence order. Yes, with conditions. Vyper is a solid, permissively licensed configuration solution for applications that need to merge multiple sources with clear precedence. However, maintenance is dormant—last release was 2023-10-04—so if you need active support or bug fixes, consider whether the package's current state meets your stability requirements. For stable, self-contained configuration needs, it remains a reasonable choice. ## Install pip install vyper-config uv add vyper-config poetry add vyper-config ## Installing vyper-config Before you install: Low install friction with four runtime dependencies (distconfig3, toml, PyYAML, watchdog). Maintenance is dormant—last release was 2023-10-04, though the repository remains active with a recent commit on 2025-01-13. Supports Python 3.8 through 3.11. License in practice: MIT license (permissive) places no restrictions on use, modification, or distribution in proprietary or open-source projects. Quickstart: pip install vyper-config from vyper import Vyper v = Vyper() v.set_default('app_name', 'myapp') v.set_config_name('config') v.add_config_path('.') v.read_in_config() app_name = v.get('app_name') Verify before relying: - Whether remote config store support (etcd, Consul, ZooKeeper) is fully functional or partially implemented - Current test coverage and stability of live config reloading across different file formats - Performance characteristics when handling large configuration files or frequent reloads ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: dormant - Downloads: 110.4K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags configuration management python, read config files yaml toml json, environment variable configuration, live config reloading, 12 factor app config, config precedence system, remote config etcd consul, configuration-management, 12-factor, live-reload [View on SkillFed](https://skillfed.io/packages/vyper-config) · [View on PyPI](https://pypi.org/project/vyper-config/)