ConfigArgParse
A drop-in replacement for argparse that allows options to also be set via config files and/or environment variables.
Install
configargparse on PyPI
pip
pip install configargparseuv
uv add configargparsepoetry
poetry add configargparsePackage facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.6) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 155 days since the last release |
| Last repo commit | |
| First released | |
| Popularity | one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: configargparse-1.7.5-py3-none-any.whl
Keywords: options, argparse, ConfigArgParse, config, environment variables, envvars, ENV, environment, optparse, YAML, INI
About ConfigArgParse
from the package's own PyPI description — quoted content, verbatim
ConfigArgParse
PyPI version (image) Supported Python versions (image) Downloads per week (image) Build status (image) API Documentation (image)
Overview
Applications with more than a handful of user-settable options are best configured through a combination of command line args, config files, hard-coded defaults, and in some cases, environment variables.
Python's command line parsing modules such as argparse have very limited support for config files and environment variables, so this module extends argparse to add these features.
API docs: https://bw2.github.io/ConfigArgParse/
PyPI:...
Read as markdown · JSON record · Source repository · Homepage
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
ConfigArgParse extends Python's argparse to parse configuration from command-line arguments, config files (INI/YAML), environment variables, and defaults in a unified interface with automatic precedence handling.
Low install friction with no runtime dependencies; actively maintained with recent release (155 days ago) and solid repository health (757 stars, last commit 2026-05-05).
MIT license permits commercial and private use with minimal restrictions; permissive treatment means you can use, modify, and distribute with only attribution required.
Usage
pip install ConfigArgParse
import configargparse
p = configargparse.ArgParser(default_config_files=['~/.myapp.conf'])
p.add('--genome', required=True, help='path to genome')
p.add('-v', '--verbose', action='store_true')
options = p.parse_args()
Verdict: Stable, well-maintained drop-in replacement for argparse with zero dependencies, broad Python 3.6+ support, and no known vulnerabilities. Ideal for applications needing unified configuration from multiple sources without added complexity.
Needs verification
- Whether optional PyYAML dependency is automatically installed or requires separate setup
- Performance characteristics when parsing large config files or many arguments
Similar packages
permissive · top 100 on PyPI
python-dotenvpermissive · top 100 on PyPI
pytest-envpermissive · top 1,000 on PyPI
rich-argparsepermissive · top 1,000 on PyPI
argcompletepermissive · top 1,000 on PyPI
tree-sitter-languagespermissive · top 1,000 on PyPI
async-lrupermissive · top 1,000 on PyPI
argparsepermissive · top 1,000 on PyPI
strictyamlpermissive · top 1,000 on PyPI
PyYAMLpermissive · top 100 on PyPI