envparse
Simple environment variable parsing
What it is and what it does
envparse is a lightweight wrapper around environment variable parsing that eliminates repetitive code for reading and casting configuration from os.environ. It supports type casting (bool, int, list, dict, JSON, URL), nested types with subtypes, default values, and variable proxying. It also reads from .env files and allows pre- and post-processing of values through callables.
The package is designed for applications following the 12 Factor App methodology, particularly those deployed on platforms like Heroku where environment-based configuration is standard. It has no runtime dependencies, making it lightweight to add to a project. However, it has been abandoned since 2015 and is no longer maintained, which creates risk for compatibility with modern Python versions.
Use it for:
- Reading and type-casting environment variables in a 12 Factor App without writing custom parsing logic.
- Loading configuration from a .env file during development while keeping production config in actual environment variables.
- Defining a schema once to validate and cast multiple environment variables consistently across an application.
- Proxying between environment variable names provided by a platform (e.g., Heroku) and names your app expects.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Parses environment variables with optional type casting, defaults, and schema validation, reducing boilerplate code for configuration management.
No, unless you are maintaining legacy code already using it. The package is abandoned (last release 2015, last commit 2022) and compatibility with Python 3.10+ is unverified. Modern alternatives like python-dotenv or pydantic-settings are actively maintained and offer equivalent or superior functionality. If you must use it, pin the version and test thoroughly on your target Python version.
Install
envparse on PyPI
pip
pip install envparseuv
uv add envparsepoetry
poetry add envparseInstalling envparse
Before you install
High install friction: the package is abandoned (last release 2015-12-19, last commit 2022-11-28) with no runtime dependencies, but the source distribution format suggests potential build or compatibility issues with modern Python versions.
License in practice
MIT license is permissive and poses no restrictions on use, modification, or distribution in commercial or private projects.
Quickstart
pip install envparse
from envparse import env
mail_enabled = env.bool('MAIL_ENABLED')
max_rows = env.int('MAX_ROWS', default=100)
Package is abandoned; compatibility with Python 3.10+ is unverified and likely problematic.
Verify before relying
- Whether the package works reliably on Python 3.9 and later without modification.
- Whether the source distribution builds without errors on modern systems.
- Active maintenance or community forks that address Python 3.10+ compatibility.
Package facts
| License | MIT (permissive) |
| Python support | not specified |
| Install friction | high — source build required |
| Runtime dependencies | none |
| Maintenance | abandoned — 3,891 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 259,805/month — #8,404 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: envparse-0.2.0.tar.gz
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
environsenvirons parses environment variables into…
permissive · top 5,000 on PyPI
django-environLoads and parses environment variables from…
permissive · top 5,000 on PyPI
cabinaCabina provides class-based configuration…
permissive · top 15,000 on PyPI
load-dotenvAutomatically loads environment variables from…
permissive · top 15,000 on PyPI
python-dotenvReads key-value pairs from a .env file and sets…
permissive · top 100 on PyPI
pytest-dotenvA pytest plugin that automatically loads…
permissive · top 5,000 on PyPI
typed-configReads typed configuration from multiple sources…
permissive · top 15,000 on PyPI
plasterPlaster provides a unified loader interface for…
permissive · top 5,000 on PyPI
mediatypeParses and creates MIME types (media types)…
permissive · top 15,000 on PyPI
pydantic-settingsLoads and validates application settings from…
permissive · top 100 on PyPI