Skip to main content

envo - smart environment variables handling

Define environmental variables in python and activate hot reloaded shells for them.

Features

  • Initialisation of variables in a given directory (creates common variables file too)

user@pc:/project$ envo local --init  # creates local environment python files
  • Easy and dynamic handling in .py files (See documentation to learn more)

  • Provides addons like handling virtual environments

user@pc:/project$ envo local --init=venv  # will add .venv to PATH
  • Automatic env variables generation based on defined python variables

  • Activating shells for a given environment

user@pc:/project$ envo local
🐣(project)user@pc:/project$
🐣(project)user@pc:/project$ exit
user@pc:/project$ envo prod
🔥(project)user@pc:/project$
  • Saving variables to a regular .env file

user@pc:/project$ envo local dump
  • Printing variables (handy for non interactive CLIs like CI or docker)

user@pc:/project$ envo local dry-run
  • Detects undefined variables.

  • Perfect for switching kubernetes contexts and devops tasks

Example

Initialising environment

user@pc:/project$ envo local init

Will create env_comm.py and env_local.py

# env_comm.py
class ProjectEnvComm(Env):
    class Meta(Env.Meta):
        name: str = "my_project'
        verbose_run = True

    def init(self) -> None:
        super().init()

    @command
    def hello_world(self) -> None:
        print("Hello world!")


ThisEnv = ProjectEnvComm

# env_local.py
class ProjectLocalEnv(ProjectEnvComm):
    class Meta(ProjectEnvComm.Meta):
        stage: str = "local"
        emoji: str = "🐣"

    def init(self) -> None:
        super().init()


ThisEnv = ProjectLocalEnv

Example usage:

user@pc:/project$ envo  # short for "envo local"
🐣(my_project)user@pc:/project$ hello_world
Hello world!

Metadata

Release files for envo 1.6.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for envo 1.6.0
File Size Uploaded Provenance Actions
envo-1.6.0.tar.gz 25.6 kB Without provenance Details for envo-1.6.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for envo 1.6.0
File Interpreter ABI Platform Actions
envo-1.6.0-py3-none-any.whl Python 3 none any Details for envo-1.6.0-py3-none-any.whl

Total release size: 57.3 kB

Release files / envo-1.6.0.tar.gz

Download URL envo-1.6.0.tar.gz
Size 25.6 kB
Tags Source
SHA-256 checksum
How to use checksums
43041f9669da06f9f96e6e4567c3cd9a978a8de277d2443dd67a488ded68d94f
BLAKE2b-256 checksum
How to use checksums
34c12fcc914dd39d7107ee59d5f267861f6292111ea5b61f3845a03408e01537
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / envo-1.6.0-py3-none-any.whl

Download URL envo-1.6.0-py3-none-any.whl
Size 31.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ddb693977579ff6eb002ee8b1009236b1d67c577824ab4578ec15858fe8d2242
BLAKE2b-256 checksum
How to use checksums
624acdacbb241ad4a17831a41b11ecb81bc7eed606503abc24bcd4e9a5c48abf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for envo 1.6.0

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.6.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page