Envidia
Envidia is a command-line interface (CLI) tool for loading project-level environment variables and simplifying the setting of long environment variables with aliases.
Table of Contents
Install
To install Envidia, use pip:
pip install envidia
Features
1. Loading .env from a directory
Envidia allows you to load environment variables from a directory, replacing long and verbose declarations with simple commands.
2. Set Environment Variables via Alias
Setting environment variables manually can be cumbersome. Envidia provides a convenient way to set them via alias.
❌: export CUDA_VISIBLE_DEVICES="0"
✅: source <(e --cuda 0) or simply es --cuda 0 if you have eval $(envidia install) in your .bashrc or .zshrc.
Put the following line in your .bashrc or .zshrc:
eval "$(envidia install --alias es)"
Specify which option is related to which environment variable in env.d/bootstrap.py:
from envidia import register_option
register_option("cuda", "CUDA_VISIBLE_DEVICES", default="0")
Use es to set environment variables specified in env.d. ( es is short for "env set").
3. Integration with Cookiecutter
Pack your project environment variables as a cookiecutter template to reuse them across different projects.
4. Pre-load and Post-load Hooks
Use hooks to verify path variables or add extra variables into the environment.
# env.d/bootstrap.py
from pathlib import Path
from envidia import Loader, register_option
register_option("cuda", "CUDA_VISIBLE_DEVICES", default="0")
register_option("foo", "FOO_PATH", default=".")
def pre_load(loader: Loader):
# add extra variable into the environment
# if hf_transfer is installed, set HF_TRANSFER=1
if is_package_installed("hf_transfer"):
loader.env_registry["HF_TRANSFER"] = "1"
else:
loader.env_registry["HF_TRANSFER"] = "0"
def post_load(loader: Loader):
# validate a path must exist
if not Path(loader.env_registry.get("FOO_PATH", "")).exists():
raise RuntimeError("FOO_PATH must exist")
License
This project is licensed under the MIT License - see the LICENSE file for details.
Metadata
Release files for envidia 0.1.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| envidia-0.1.3.tar.gz | 9.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| envidia-0.1.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 17.2 kB
Release files / envidia-0.1.3.tar.gz
| Download URL | envidia-0.1.3.tar.gz |
|---|---|
| Size | 9.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
22663a946a9da7b164eb6e0432a9f7a135d75e2b4144a8d94ee98f56b5af3e52
|
|
BLAKE2b-256 checksum How to use checksums |
a6344441d726e8ca83a3ff1bd967f1fce0719726c9c3a0f533e2415058d27ba3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 4, 2025.
Transparency logRelease files / envidia-0.1.3-py3-none-any.whl
| Download URL | envidia-0.1.3-py3-none-any.whl |
|---|---|
| Size | 7.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
15d1009f6d702861078372c432c815cd82bcc53da7313d34b6528a63ce978907
|
|
BLAKE2b-256 checksum How to use checksums |
981b07fb3912408c696b48e601a42690d55e6e1fea0b5af969bd6e534bb6f1c4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 4, 2025.
Transparency log