# Anaconda.org

> Anaconda.org is the community home for conda and Python packages:
find, build, and share packages built by and for the conda community
(conda-forge, bioconda, PyTorch, and more).

Packages are organized into **channels** (for example `conda-forge`, owned by
a user or an organization). Each package can have multiple **versions/files**
and **labels** (for example `main` or `dev`) that control which release
stream consumers install from. Packages are installed with `conda` or
downloaded directly; publishing and managing packages is typically done with
the `anaconda-client` command line tool
(https://github.com/anaconda/anaconda-client/).

Key concepts for interpreting this site:
- A **channel** is a namespace (e.g. `conda-forge`, `anaconda`, `bioconda`) that
  hosts packages. Channel URLs follow `https://anaconda.org/{channel}`.
- A **package page** follows `https://anaconda.org/channels/{channel}/packages/{package}/overview` and lists
  versions, supported platforms (linux-64, osx-arm64, win-64, noarch), license,
  install commands, and download counts.
- The conda installs packages from `https://conda.anaconda.org/{channel}`,
  not from the anaconda.org web pages themselves.
- Packages on the `anaconda`/defaults channels are covered by the Anaconda
  Terms of Service, which restricts heavy commercial use and mirroring.
- Install commands take the form `conda install -c {channel} {package}`.

## Docs

- [Anaconda.org user guide](https://docs.anaconda.com/anacondaorg/user-guide/):
  Official documentation covering accounts, organizations, channels, packages,
  and labels.
- [anaconda-client](https://github.com/anaconda/anaconda-client):
  Command line client used to authenticate with, upload to, and download from
  Anaconda.org.

## Main URL patterns, which are used in package discover

- `/channels/<channel>` - a channel's packages (a channel is owned by a user
  or an organization). Get most popular, downloads statistics for a channel 
- `/channels/<channel>/packages/<package>/overview` - a package's summary,
  install command, and metadata, supported and unsupported versions, license. 
- `/channels/<channel>/packages/<package>/files` - a package's versions and
  files.
- `/channels/<channel>/packages/<package>/labels` - a package's labels (for
  example `main`, `dev`).
- `/search?q=<query>` - search across packages names and filter later by version, platform, license type.

## Most popular channels

- https://anaconda.org/channels/main - default channels used by conda
- https://anaconda.org/channels/main-x - main-x extends the Anaconda main channel with thousands of additional packages built and secured by Anaconda. This channel requires authentication (terms: https://www.anaconda.com/legal/terms/terms-of-service)
- https://anaconda.org/channels/conda-pypi - communiA community-led collection of recipes, build infrastructure, and distributions for the conda package manager.
- https://anaconda.org/channels/bioconda - Bioconda is a distribution of bioinformatics software realized as a channel for the versatile Conda package manager.
- https://anaconda.org/channels/robostack-jazzy - robotics related packages and libraries 

### Examples

- https://anaconda.org/channels/main/packages/numpy/overview
- https://anaconda.org/search?q=pandas

## Installing packages

Packages are installed with `conda`, channel-qualified:

```
conda install conda-forge::numpy
```

or by adding the channel to a `.condarc` file for ongoing use rather than a
one-off install. Some channels, including the `anaconda` channel, are
covered by the Anaconda repository Terms of Service, which among other
things prohibits heavy commercial use and mirroring by third parties for
commercial purposes.

## API

- https://api.anaconda.org is the REST API backing Anaconda.org. It
  is intended primarily for use by `anaconda-client`
  (https://github.com/anaconda/anaconda-client/) and other automated
  tooling rather than direct browsing.

## Legacy URLs

- `/<channel>/<package>` still resolves and redirects to the canonical
  `/channels/<channel>/packages/<package>/overview` URL. Prefer the
  canonical `/channels/...` form when linking to a package.

## Optional

- [llms.txt](https://anaconda.org/llms.txt): Shorter version of this file
  with only the most important links.