https://github.com/pyodide/pyodide-recipes
Collections of package recipes for Pyodide
https://github.com/pyodide/pyodide-recipes
Last synced: 2 months ago
JSON representation
Collections of package recipes for Pyodide
- Host: GitHub
- URL: https://github.com/pyodide/pyodide-recipes
- Owner: pyodide
- License: mpl-2.0
- Created: 2023-01-27T05:17:45.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2026-04-22T19:36:49.000Z (2 months ago)
- Last Synced: 2026-04-22T21:28:02.751Z (2 months ago)
- Language: Python
- Size: 8.31 MB
- Stars: 39
- Watchers: 6
- Forks: 76
- Open Issues: 169
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Maintainers: docs/MAINTAINERS.md
Awesome Lists containing this project
README
# pyodide-recipes
Collections of package recipes for Pyodide
## Adding a new package
> Note: Use Python 3.14 or upper to run the following commands.
To add a new package, create a package recipe in the `packages` directory.
It is required to clone the repository with the `--recurse-submodules` option to ensure
that all submodules are initialized. If you have already cloned the repository without
this option, you can run the following command to initialize the submodules:
```bash
$ git submodule update --init --recursive
```
You can then start by creating a boilerplate recipe with the following command:
```bash
$ pip install ./pyodide-build
$ pyodide skeleton pypi
```
This will create a new directory in the `packages/` directory with the package name.
You can then edit the `meta.yaml` file in the package directory to add build scripts
and other metadata including the dependencies.
See the [Pyodide documentation](https://pyodide.org/en/stable/development/adding-packages-into-pyodide-distribution.html)
for more information on creating package recipes.
## Updating an existing package
Assuming you've already followed the setup instructions above, just run:
```bash
$ pyodide skeleton pypi --update
```
## How to use the recipes in Pyodide
There are three ways to use the packages built by this repository in Pyodide:
### 1. Wait until the next Pyodide release
When we release a new version of Pyodide, we include the updated recipes in the Pyodide distribution.
But we don't guarantee that patch releases of Pyodide will include the updated recipes.
### 2. Use Anaconda package index
We also release the recipes to Anaconda package index. You can pass the following indesx URLs to `micropip` to install the packages
from the index.
- `https://pypi.anaconda.org/pyodide/simple`: Contains all the packages built for all stable versions of Pyodide since Pyodide 0.28.0.
- `https://pypi.anaconda.org/pyodide-nightly/simple`: Contains the tip-of-tree packages which exist in the `main` branch of this repository.
### 3. Download the release artifact from GitHub releases
We release the built packages as a tarball in the GitHub releases occassionally.
You can download the tarball and host it on your own server.
## Maintainer information
See [MAINTAINERS.md](docs/MAINTAINERS.md) for information on how to maintain this repository.