Skip to main content

A metaclass for automatically loading and converting environment variables.

Project description

PyEnvloaderMeta - metaclass for automatically loading and converting environment variables into class attributes.

  • It simplifies the process of managing environment variables by leveraging type annotations and the python-dotenv package.
  • Features - Automatically loads environment variables from a .env file.
  • Converts environment variables to specified types using type annotations.
  • Raises errors if required environment variables are missing or cannot be converted.

Installation You can install pyenvloader from PyPI using pip:

pip install pyenvloadermeta

Usage

To use pyenvloadermeta, define a class with pyenvloadermeta.EnvLoaderMeta as the metaclass and specify the environment variables with type annotations. Here’s an example:

  1. Create a .env file in your project directory:

.env

API_ID=123456
API_HASH=dfdafdfasdff
BOT_TOKEN=fasdfasfdafsd
OZ=11.2
POKEMON=["Pikachu", "Raichu's"]
  1. Define your class using EnvLoaderMeta:
from pyenvloadermeta import EnvLoaderMeta

class Env(metaclass=EnvLoaderMeta):
	API_ID: int
	API_HASH: str
	BOT_TOKEN: str
	OZ: float
	POKEMON: list[str]
  1. Access the environment variables as class attributes:
print(Env.API_ID)
print(Env.API_HASH)
print(Env.BOT_TOKEN)
print(Env.OZ)
print(Env.POKEMON)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyenvloadermeta-1.0.2.tar.gz (2.6 kB view details)

Uploaded Source

Built Distribution

pyenvloadermeta-1.0.2-py3-none-any.whl (2.7 kB view details)

Uploaded Python 3

File details

Details for the file pyenvloadermeta-1.0.2.tar.gz.

File metadata

  • Download URL: pyenvloadermeta-1.0.2.tar.gz
  • Upload date:
  • Size: 2.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.2

File hashes

Hashes for pyenvloadermeta-1.0.2.tar.gz
Algorithm Hash digest
SHA256 d934dd5da616ccf7449b66e70faf2d66cbeac4125262e7700bc6441f4ac32a13
MD5 1e9e1f9e6fde163bf278284d6b4a250c
BLAKE2b-256 b23c0dbae653a8798b4b3fcba9d4a2e2fe572c54816f665c99aa43e71cc469af

See more details on using hashes here.

File details

Details for the file pyenvloadermeta-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for pyenvloadermeta-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 860732b08509eae8cdddddd3fe9f8391abdee4ef74066fe781f55073cff3a79b
MD5 3514b608e488663e4f00f218b2c6e5a3
BLAKE2b-256 5860338339596dcccf6fa44ab7b5c0b7d5d38c20227cfb8fb4998af6be50cc6e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page