Skip to content

ahamlabs/envr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

envr

envr shares reproducible Python environments via signed uv.lock snapshots.

Repo layout

  • envr_server/: FastAPI server package (envr-server)
  • envr_cli/: Typer CLI package (envr)

Server quickstart

uv run uvicorn envr_server.main:app --reload

Server environment variables:

  • ENVR_SERVER_PORT (default 8000)
  • ENVR_DB_PATH (default /srv/envr/metadata.db)
  • ENVR_KEY_PATH (default /etc/envr/server.key)
  • ENVR_SNAPSHOTS_DIR (default /srv/envr/snapshots)

A systemd template is available at envr_server/envr-server.service.

CLI quickstart

uv tool install .
envr config set server http://localhost:8000
envr push v1 --desc "initial lock"
envr list
envr pull v1
envr sync

The CLI stores config in ~/.envr/config.toml and project manifest data in .envr.

About

envr makes your uv.lock the portable, signed artifact it should be. Push to a registry, sync on any OS (macOS, Windows, Linux). Cloning a project? envr sync restores every package with cryptographic guarantee. Versioned, shareable, no venv clutter. Research-grade reproducibility, zero friction. Built on uv. Free & open source.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages