click
Composable command line interface toolkit
Install
click on PyPI
pip
pip install clickuv
uv add clickpoetry
poetry add clickPackage facts
| License | BSD-3-Clause (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — colorama |
| Maintenance | actively maintained — 50 days since the last release |
| Last repo commit | |
| First released | |
| Popularity | one of the 100 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: click-8.4.2-py3-none-any.whl
About click
from the package's own PyPI description — quoted content, verbatim
<div align="center"><img src="https://raw.githubusercontent.com/pallets/click/refs/heads/stable/docs/_static/click-name.svg" alt="" height="150"></div>
Click
Click is a Python package for creating beautiful command line interfaces in a composable way with as little code as necessary. It's the "Command Line Interface Creation Kit". It's highly configurable but comes with sensible defaults out of the box.
It aims to make the process of writing command line tools quick and fun while also preventing any frustration caused by the inability to implement an intended CLI API.
Click in three points:
- Arbitrary nesting of commands
- Automatic help page generation
- Supports lazy loading of subcommands at runtime
A Simple Example
import click
@click.command()
@click.option("--count", default=1, help="Number of greetings.")
@click.option("--name", prompt="Your name", help="The person to greet.")
def hello(count, name):
"""Simple program that greets NAME for a total of COUNT times."""
for _ in range(count):
click.echo(f"Hello, {name}!")
if __name__ == '__main__':
hello()
``` $ python hello.py --count=3 Your name: Click Hello,...
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
Click is a Python framework for building command-line interfaces with decorators, automatic help generation, and composable nested commands with minimal boilerplate.
Minimal friction: single pure-Python wheel dependency on colorama, released 50 days ago with active maintenance and last commit 2026-08-09.
BSD-3-Clause permissive license allows commercial and private use with attribution; no restrictions on derivative works or distribution.
Usage
pip install click==8.4.2
import click
@click.command()
@click.option('--name', default='World')
def hello(name):
click.echo(f'Hello {name}!')
if __name__ == '__main__':
hello()
Requires Python >=3.10
Verdict: Click is a mature, actively maintained top-100 PyPI package with zero known vulnerabilities, permissive licensing, and trivial install friction. Ideal for any Python CLI project.
Similar packages
permissive · top 1,000 on PyPI
rich-clickpermissive · top 1,000 on PyPI
click-option-grouppermissive · top 1,000 on PyPI
Werkzeugpermissive · top 1,000 on PyPI
Flask-SQLAlchemypermissive · top 1,000 on PyPI
Jinja2permissive · top 100 on PyPI
MarkupSafepermissive · top 100 on PyPI
itsdangerouspermissive · top 1,000 on PyPI
mergedeeppermissive · top 1,000 on PyPI
nltkpermissive · top 1,000 on PyPI