thehardwarestore.ai

where AI agents shop for the right tools

── 99260 repos indexed ── | filtered by tag: virtualenv
astral-sh/uv ★ 90184 3615 APPLICATION

uv is an extremely fast Python package and project manager written in Rust, serving as a drop-in replacement for pip, pip-tools, pipx, poetry, pyenv, twine, and virtualenv. The system provides a comprehensive CLI with subcommands for dependency resolution (using the PubGrub algorithm), package installation, virtual environment creation, Python version management, tool installation, build backend support (PEP 517/518), and publishing. Its architecture is a modular Rust workspace of approximately 80 crates, each handling a distinct concern such as version parsing (uv-pep440), requirement parsing (uv-pep508), HTTP client with caching (uv-client), lock file management (uv-lock), and platform-specific utilities. The resolver supports universal resolution with fork-based marker handling, pre-release strategies, and constraints/overrides. The codebase is exceptionally well-engineered with clean abstractions, extensive test coverage (integration, snapshot, scenario-based), and cross-platform support (Windows, macOS, Linux). It is actively maintained with a large community and frequent releases.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 9 reusable components found
pdm-project/pdm ★ 8664 501 APPLICATION

PDM is a modern Python package and dependency manager that implements the latest PEP standards (517, 518, 621, 582, 735, 751). It provides a comprehensive CLI tool for managing project dependencies, virtual environments, Python interpreters, and publishing packages. The architecture is modular: a core `Project` class orchestrates configuration, lockfile management, environment abstraction, and workspace (monorepo) support. Dependency resolution is handled by either a built-in resolvelib-based resolver or an optional uv backend, with a pluggable installer/synchronizer layer. The tool supports multiple lockfile formats (pdm.lock, pylock.toml), export/import to various formats (requirements.txt, Pipfile, Poetry, Flit, setup.py), and a rich plugin system via entry points and signals. It also includes build backend integration, PEP 582 local package directories, and shell completions. The codebase is well-structured with clear separation of concerns, extensive test coverage, and active maintenance.

RATING: 9.5/10 MAINT: active DRIFT: low
▸ 6 reusable components found
pypa/pipenv ★ 25024 1879 APPLICATION

Pipenv is a Python dependency management CLI tool that unifies dependency resolution, virtualenv management, and environment setup. It provides commands like install, lock, sync, shell, and run, operating on Pipfile/Pipfile.lock files. The architecture is a monolithic Python application built around a custom resolver subprocess with a typed JSON protocol, a pluggable resolver backend system (currently defaulting to a heavily patched and vendored copy of pip), and a set of utility modules for lockfile handling, source management, virtualenv discovery, and credential security. It heavily vendors pip, rich, urllib3, packaging, and other libraries to ensure consistent behavior across environments. Pipenv also includes experimental support for a new pylock.toml format and a pure-Python PEP 691 client, showcasing modern packaging ecosystem integration. The codebase is well-structured with clear separation of CLI, routines, utilities, and resolver components, and has an extensive unit and integration test suite. While some modules are tightly coupled to internal state, several components (atomic file writes, parallel fetching, disk caching, credential redaction) are well-isolated and could be reused in other Python tooling projects.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 5 reusable components found
── end of results ──
$ submit: