Skip to content

nkantar/Parsenvy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

56920b1 · Jan 27, 2025
Jan 26, 2025
Jan 27, 2025
Aug 26, 2024
Aug 26, 2024
Feb 20, 2021
Jan 27, 2025
Feb 23, 2021
Feb 23, 2021
Mar 17, 2017
Jan 27, 2025
Aug 26, 2024
Aug 26, 2024
Jan 27, 2025
Jan 27, 2025

Repository files navigation

Parsenvy: Enviously Elegant Environment Variable Parsing

Parsenvy is an enviously elegant environment variable parsing Python library.

main Documentation Status Github Actions badgefury svg Unreleased chages License: BSD-3-Clause

Environment variables are strings by default. This can be rather inconvenient if you're dealing with a number of them, and in a variety of desired types. Parsenvy aims to provide an intuitive, explicit interface for retrieving these values in appropriate types with human-friendly syntax.

Features

  • Compatible with Python 3.9+ only (the last Python 2 compatible version was 1.0.2).
  • Fully tested on Linux, macOS, and Windows.
  • No dependencies outside of the Python standard library.
  • BSD (3-Clause) licensed.
  • Utterly awesome.
  • Now with docs!

Examples

>>> import parsenvy

>>> parsenvy.bool('DEBUG_ENABLED')  # DEBUG_ENABLED=True
True

>>> parsenvy.int('POSTS_PER_PAGE')  # POSTS_PER_PAGE=13
13

>>> parsenvy.float('EXCHANGE_RATE')  # EXCHANGE_RATE=42.911
42.911

>>> parsenvy.list('INVALID_USERNAMES')  # INVALID_USERNAMES=admin,superuser,user,webmaster
['admin', 'superuser', 'user', 'webmaster']

>>> parsenvy.tuple('SAMPLE_GREETING')  # SAMPLE_GREETING=Hello,world!
('Hello', 'world!')

>>> parsenvy.set('ALLOWED_CATEGORIES')  # ALLOWED_CATEGORIES=python,vim,git
{'python', 'vim', 'git'}

>>> parsenvy.str('DB_PREFIX')  # DB_PREFIX=dj_
'dj_'

Install

pip install parsenvy

Contributing

Contributions are welcome, and more information is available in the contributing guide.