unidep
Unified Conda and Pip requirements management.
What it is and what it does
UniDep is a CLI tool and build-system plugin that consolidates Conda and Pip dependency specifications into a single source of truth. Instead of maintaining separate `requirements.txt`, `environment.yaml`, and `pyproject.toml` files, you write dependencies once in either `requirements.yaml` or `pyproject.toml`, and UniDep generates platform-specific lock files, Conda environments, and pip requirement files on demand.
It integrates with Setuptools and Hatchling to handle local dependencies in monorepos, supports platform selectors for OS-specific packages, and can generate `conda-lock.yml`, `pixi.toml`, and pinned `requirements.txt` files. The tool is designed to reduce the friction of juggling multiple package managers and dependency formats, particularly in projects that need both Python packages (from PyPI) and system-level or scientific packages (from Conda channels).
Use it for:
- Manage monorepos where multiple sub-packages share dependencies and need consistent lock files across all platforms.
- Projects requiring both PyPI packages and Conda packages (e.g., scientific computing with compiled libraries) without maintaining separate dependency files.
- Generate fully pinned `conda-lock.yml` or `requirements.txt` from a single declarative source for reproducible CI/CD builds.
- Specify platform-specific dependencies (e.g., different packages for macOS, Linux, Windows) in one file.
- Integrate dependency management into build workflows via Setuptools or Hatchling without external configuration files.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
UniDep unifies Conda and Pip dependency management by reading from a single `requirements.yaml` or `pyproject.toml` file and generating pinned lock files, environment configurations, and handling both Python and non-Python package installation.
Yes, with conditions. UniDep is actively maintained, has low install friction, and solves a real problem for projects mixing Conda and Pip dependencies. However, the license status is unclear—verify the actual license in the repository before adopting in a commercial or restricted context. If you manage monorepos or need cross-platform dependency pinning, it is worth evaluating.
Install
unidep on PyPI
pip
pip install unidepuv
uv add unideppoetry
poetry add unidepInstalling unidep
Before you install
Low friction: pure Python wheel with only three runtime dependencies (packaging, ruamel.yaml, tomli). Active maintenance with a release 50 days ago and 243 repository stars.
License in practice
License status is unclear—no SPDX identifier or raw license text is recorded in the package metadata. Verify the actual license before adopting in a commercial or restricted context.
Quickstart
pip install unidep
# Create a requirements.yaml with both conda and pip packages
unidep install # Installs all dependencies from requirements.yaml or pyproject.toml
Requires Python 3.9 or later.
Verify before relying
- Whether the unclear license is documented in the repository or GitHub releases.
- Whether conda and mamba are required or optional for unidep's core functionality.
- Performance characteristics when handling large monorepos or complex dependency graphs.
Package facts
| License | not declared (unclear) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — packaging, ruamel.yaml, tomli |
| Maintenance | actively maintained — 50 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 79,053/month — #14,386 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: unidep-3.4.2-py3-none-any.whl
Tags
More Build Tools packages
Provides reusable utilities for Python…
permissive · top 100 on PyPI
tqdmWraps any iterable to display a real-time…
copyleft · top 100 on PyPI
pippip is the standard installer for Python…
permissive · top 100 on PyPI
hatchlingHatchling is a standards-compliant Python build…
permissive · top 100 on PyPI
grpcio-toolsGenerates Python gRPC service stubs and message…
permissive · top 1,000 on PyPI
pre-commitpre-commit is a framework for installing and…
permissive · top 1,000 on PyPI
ensurecondaA CLI tool that finds or installs a conda/mamba…
permissive · top 15,000 on PyPI
pyproject2condaConverts Python project dependencies from…
unclear · top 15,000 on PyPI
pip-toolspip-tools provides command-line tools to…
permissive · top 5,000 on PyPI
py-rattlerpy-rattler provides Python bindings to…
permissive · top 15,000 on PyPI
gitmanGitman manages nested Git repositories as…
permissive · top 15,000 on PyPI
pip-compile-multiCompiles multiple requirements files into…
permissive · top 15,000 on PyPI
pip-upgraderAn interactive CLI tool that upgrades Python…
permissive · top 15,000 on PyPI
pipxpipx installs and runs Python command-line…
permissive · top 5,000 on PyPI
poetry-plugin-exportExports Poetry's locked dependency tree to…
permissive · top 1,000 on PyPI
reductoThis package is an alias that installs the…
permissive · top 15,000 on PyPI