π 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.yamlor- pyproject.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.yamlor- pyproject.tomlfiles into one Conda- environment.yamlfile and maintain fully consistent global and per sub package- conda-lockfiles.
- π Platform-Specific Support: Specify dependencies for different operating systems or architectures. 
- π§ - pip-compileIntegration: Generate fully pinned- requirements.txtfiles from- requirements.yamlor- pyproject.tomlfiles using- pip-compile.
- π Integration with - conda-lock: Generate fully pinned- conda-lock.ymlfiles from (multiple)- requirements.yamlor- pyproject.tomlfile(s), leveraging- conda-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.