Conda (Miniforge)

Package and environment manager for Python and scientific software

Research Infrastructure & Reproducibility Essential Core Tool Explore Provisional Teaching

Our View

Explore Provisional Teaching

Useful for existing conda-based workflows and scientific package compatibility. Compare it with Pixi when designing new reproducible project environments; the group should review which approach to teach as its default.

Provisional positions are editorial proposals awaiting group review.

Teaching — Recorded in topic offerings; consult the dated event links for availability.

2 topics with recorded teaching · 11 past offerings · 0 upcoming offerings

Related themes: Scientific Computing

Related topics: Automating Research WorkflowsDeveloper Environment

Common use cases

  • Install complex scientific packages (NumPy, SciPy, pandas)
  • Create isolated environments for different projects
  • Ensure reproducibility by locking dependency versions
  • Manage Python versions across projects

Getting started

Conda is a package manager that simplifies the installation of scientific software. It helps in creating isolated environments for different projects, ensuring reproducibility and preventing dependency conflicts.

Why Conda?

  • Solves Dependencies: Automatically resolves and installs all package dependencies
  • Environment Isolation: Keep different projects separate with their own package versions
  • Cross-Platform: Works consistently across Windows, macOS, and Linux
  • Scientific Focus: Optimized for data science and research computing packages

Installation

We recommend installing Miniforge, which includes conda and uses conda-forge as the default channel.

  1. Download Miniforge from the official website
  2. Run the installer for your operating system
  3. Follow the installation prompts
  4. Restart your terminal/command prompt

Getting Started

Create a new environment:

conda create -n myenv python=3.11
conda activate myenv

Install packages:

conda install numpy pandas matplotlib

Best Practices

  • Use separate environments for different projects
  • Keep your base environment minimal
  • Export environment specifications for reproducibility: conda env export > environment.yml
  • Use conda-forge channel for the latest packages

Tips

  • List environments: conda env list
  • Remove environment: conda env remove -n myenv
  • Update packages: conda update --all