Home

4 min read Original article ↗

Pixi#

Pixi is a fast, modern, and reproducible package management tool for developers of all backgrounds.

Highlights#

  • 🐍 Python
    Support for pyproject.toml and PyPI through uv.
  • 🌍 Global Tools
    Install global tools, safely isolated. Replacing apt, homebrew, winget.

Quick Demo#

Project setup is a breeze with Pixi.

pixi init hello-world
cd hello-world
pixi add python
pixi run python -c 'print("Hello World!")'

Pixi Demo Pixi Demo

Install your favorite tools with a single command.

pixi global install gh nvim ipython btop ripgrep

Pixi Global Demo Pixi Global Demo


Builtin Core Features Pixi Conda Pip Poetry uv
Installs Python
Supports Multiple Languages
Lockfiles
Task runner
Workspace Management

Available Software#

Pixi defaults to the biggest Conda package repository, conda-forge, which contains over 30,000 packages.

And browse the thousands more on prefix.dev, or host your own channels


Installation#

To install pixi, run:

curl -fsSL https://pixi.sh/install.sh | sh

Download installer

Or run:

powershell -ExecutionPolicy ByPass -c "irm -useb https://pixi.sh/install.ps1 | iex"

Now restart your terminal or shell!

The installation needs to become effective by restarting your terminal or sourcing your shell.

Don't trust our link? Check the script!

You can check the installation sh script: download and the ps1: download. The scripts are open source and available on GitHub.

See all installation options →


Getting Started#

  1. Initialize a workspace:
    pixi init hello-world
    cd hello-world
    
  2. Add dependencies into the default environment:
  3. Create your script:

    hello.py

    from cowpy.cow import Cowacter
    
    message = Cowacter().milk("Hello Pixi fans!")
    print(message)
    
  4. Add a task:
    pixi task add start python hello.py
    
  5. Run the task:
    ✨ Pixi task (start): python hello.py
     __________________
     < Hello Pixi fans! >
     ------------------
          \   ^__^
           \  (oo)\_______
              (__)\       )\/\
                ||----w |
                ||     ||
    
  6. Enter the shell into the environment:
    pixi shell
    python hello.py
    exit
    

More details on how to use Pixi with Python can be found in the Python tutorial.

  1. Initialize a workspace: pixi init pixi-rust cd pixi-rust
  2. Add dependencies:
  3. Create your workspace:
  4. Add a task:
    pixi task add start cargo run
    
  5. Run the task:
    ✨ Pixi task (start): cargo run
        Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.02s
         Running `target/debug/pixi-rust`
    Hello, world!
    

This is more of an example to show off how easy it is to use Pixi with Rust. Not a recommended way to build Rust projects. More details on how to use Pixi with Rust can be found in the Rust tutorial.

  1. Initialize a workspace:
    pixi init pixi-node
    cd pixi-node
    
  2. Add dependencies:
  3. Create your script:

    hello.js

    console.log("Hello Pixi fans!");
    
  4. Add a task:
    pixi task add start "node hello.js"
    
  5. Run the task:
    ✨ Pixi task (start): node hello.js
    Hello Pixi fans!
    
  1. Initialize a workspace:
    pixi init pixi-ros2 -c https://prefix.dev/conda-forge -c "https://prefix.dev/robostack-humble"
    cd pixi-ros2
    
  2. Add dependencies:

    pixi add ros-humble-desktop
    
    This might take a minute

    Depending on your internet connection, this will take a while to install, as it will download the entire ROS2 desktop package.

  3. Start Rviz

More details on how to use Pixi with ROS2 can be found in the ROS2 tutorial.

  1. Install all your favorite tools with a single command:
    pixi global install terraform ansible k9s make
    
  2. Use them everywhere:
    ansible --version
    terraform --version
    k9s version
    make --version
    

What Developers Say#


  • GitHub: Pixi source code, feel free to leave a star!
  • Discord: Join our community and ask questions.
  • Prefix.dev: The company behind Pixi, building the future of package management.
  • conda-forge: Community-driven collection of recipes for the conda package manager.
  • Rattler: Everything conda but built in Rust. Backend of Pixi.
  • rattler-build: A blazing fast build system for conda packages.