Pixi for Project and Environment Management #63
Locked
AndrewSazonov
announced in
ADRs
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
We use Pixi as the recommended tool for environment management, dependency management, and task execution across all EasyScience projects.
Main Benefits
One tool handles Python versions, environments, dependencies, and tasks, reducing setup friction.
Python versions are explicitly declared per project, ensuring consistent behavior.
Each project gets its own isolated environment with no risk of conflicts.
Pixi installs packages from both ecosystems cleanly, avoiding fragile pip + conda mixing.
Fast dependency resolution and environment creation compared to traditional workflows.
Common tasks (tests, docs, formatting, CI commands) can be declared once and run consistently via
pixi run.Integration with Existing Projects
Important: In our projects, Python dependencies must remain defined in
pyproject.tomlto allow building and distributing the package independently of Pixi.Therefore:
pyproject.toml, which ensures:This approach keeps Pixi as an environment and workflow management tool, not a replacement for standard Python packaging.
How to Get Started
Pixi configuration is managed through the EasyScience Copier templates:
https://github.com/easyscience/templates
A step-by-step guide for using Pixi in EasyScience projects is available in the templates README:
https://github.com/easyscience/templates/blob/master/README.md
Links to the related discussions: #43
Beta Was this translation helpful? Give feedback.
All reactions