pyodide-cli
"The command line interface for the Pyodide project"
What it is and what it does
pyodide-cli is the command-line interface layer for the Pyodide project, built on click and rich for command handling and terminal output. It serves primarily as a plugin host: other packages in the Pyodide ecosystem (such as pyodide-build, pyodide-pack, and auditwheel-emscripten) depend on it and register their own subcommands via setuptools entry points, allowing them to extend the main `pyodide` command without modifying this package directly.
Developers building tools for the Pyodide ecosystem use pyodide-cli as a foundation by adding a dependency on it and registering a `pyodide.cli` entry point that points to a click command or typer app. The package handles command discovery and dispatch, so each tool can contribute its own subcommand to a unified CLI interface.
Use it for:
- Extending the Pyodide CLI with custom subcommands from your own package via entry points
- Building Pyodide ecosystem tools that integrate with the main `pyodide` command
- Centralizing CLI infrastructure for related Pyodide build and packaging tools
- Registering click or typer-based commands that appear under the main `pyodide` namespace
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
A command-line interface for the Pyodide project that provides core CLI functionality and allows other packages to register subcommands via entry points.
Yes, if you are developing tools for the Pyodide ecosystem or need to register subcommands in the Pyodide CLI. The package is actively maintained, has low install friction, and is designed to be a dependency of other ecosystem packages rather than a standalone tool. Direct installation is typically unnecessary unless you are extending Pyodide's CLI.
Install
pyodide-cli on PyPI
pip
pip install pyodide-cliuv
uv add pyodide-clipoetry
poetry add pyodide-cliInstalling pyodide-cli
Before you install
Low install friction with only two lightweight runtime dependencies (click and rich). Actively maintained with recent releases; the repository is current and well-established within the Pyodide ecosystem.
License in practice
Licensed under MPL-2.0 (copyleft). You may use and modify the package freely, but derivative works must be distributed under the same license and source code must be made available.
Quickstart
pip install pyodide-cli
# In your package's setup.cfg or pyproject.toml, register a subcommand:
# [project.entry-points."pyodide.cli"]
# my_command = "mypackage.cli:main"
# Then users can run: pyodide my_command
Requires Python 3.12 or later.
Verify before relying
- Whether this package is typically installed directly or only as a transitive dependency of other Pyodide ecosystem packages
Package facts
| License | MPL-2.0 (copyleft) |
| Python support | supports the current Python release (>=3.12) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — click, rich |
| Maintenance | actively maintained — 198 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 125,988/month — #11,793 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pyodide_cli-0.5.0-py3-none-any.whl
Tags
More Build Tools packages
Provides reusable utilities for Python…
permissive · top 100 on PyPI
tqdmWraps any iterable to display a real-time…
copyleft · top 100 on PyPI
pippip is the standard installer for Python…
permissive · top 100 on PyPI
hatchlingHatchling is a standards-compliant Python build…
permissive · top 100 on PyPI
grpcio-toolsGenerates Python gRPC service stubs and message…
permissive · top 1,000 on PyPI
pre-commitpre-commit is a framework for installing and…
permissive · top 1,000 on PyPI
pyodide-pyProvides core interpreter functionality for…
copyleft · top 15,000 on PyPI
click-pluginsExtends Click CLI groups to load external…
permissive · top 1,000 on PyPI
pyodide-lockParses, modifies, and writes pyodide-lock.json…
permissive · top 15,000 on PyPI
typer-cliThis package is a deprecated migration shim…
permissive · top 15,000 on PyPI
jupyterlite-pyodide-kernelProvides a Python kernel for JupyterLite that…
permissive · top 15,000 on PyPI
cliffcliff is a framework for building command-line…
permissive · top 5,000 on PyPI
trogonTrogon auto-generates a terminal user interface…
permissive · top 15,000 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
cloupCloup extends Click with option groups,…
permissive · top 5,000 on PyPI
devpi-clientdevpi-client is a command-line tool for…
permissive · top 15,000 on PyPI