π IntroductionΒΆ

UniDep streamlines Python project dependency management by unifying Conda and Pip packages in a single system. Learn when to use UniDep in our FAQ.
Handling dependencies in Python projects can be challenging, especially when juggling Python and non-Python packages. This often leads to confusion and inefficiency, as developers juggle between multiple dependency files.
π Unified Dependency File: Use either
requirements.yamlorpyproject.tomlto manage both Conda and Pip dependencies in one place.βοΈ Build System Integration: Integrates with Setuptools and Hatchling for automatic dependency handling during
pip install ./your-package.π» One-Command Installation:
unidep installhandles Conda, Pip, and local dependencies effortlessly.β‘οΈ Fast Pip Operations: Leverages
uv(if installed) for faster pip installations.π’ Monorepo-Friendly: Render (multiple)
requirements.yamlorpyproject.tomlfiles into one Condaenvironment.yamlfile and maintain fully consistent global and per sub packageconda-lockfiles.π Platform-Specific Support: Specify dependencies for different operating systems or architectures.
π§
pip-compileIntegration: Generate fully pinnedrequirements.txtfiles fromrequirements.yamlorpyproject.tomlfiles usingpip-compile.π Integration with
conda-lock: Generate fully pinnedconda-lock.ymlfiles from (multiple)requirements.yamlorpyproject.tomlfile(s), leveragingconda-lock.π€ Nerd stats: written in Python, >99% test coverage, fully-typed, all Ruffβs rules enabled, easily extensible, and minimal dependencies
unidep is designed to make dependency management in Python projects as simple and efficient as possible.
Try it now and streamline your development process!
Tip
Check out the example requirements.yaml and pyproject.toml below.