skillfed

ConfigArgParse

A drop-in replacement for argparse that allows options to also be set via config files and/or environment variables.

configargparse Permissive license MIT Active 757 v1.7.5 released

Install

configargparse on PyPI

pip

pip install configargparse

uv

uv add configargparse

poetry

poetry add configargparse

Package 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

Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseNatural Language :: EnglishProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPy

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
argparse config file supportcommand line and config file parsingenvironment variable argument parsingini yaml config parserconfiguration management pythonargparse replacement with config filesmulti-source argument parsing

Similar packages