Skip to main content

Composable command line interface toolkit

Reason this release was yanked:

Unintended change in behavior of boolean options and None

Project description

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, Click!
Hello, Click!
Hello, Click!

Donate

The Pallets organization develops and supports Click and other popular packages. In order to grow the community of contributors and users, and allow the maintainers to devote more time to the projects, please donate today.

Contributing

See our detailed contributing documentation for many ways to contribute, including reporting issues, requesting features, asking or answering questions, and making PRs.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

click-8.2.2.tar.gz (264.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

click-8.2.2-py3-none-any.whl (103.9 kB view details)

Uploaded Python 3

File details

Details for the file click-8.2.2.tar.gz.

File metadata

  • Download URL: click-8.2.2.tar.gz
  • Upload date:
  • Size: 264.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for click-8.2.2.tar.gz
Algorithm Hash digest
SHA256 068616e6ef9705a07b6db727cb9c248f4eb9dae437a30239f56fa94b18b852ef
MD5 2b12ffb230a22fd5aabe301ade045b4a
BLAKE2b-256 e987105111999772ec9730e3d4d910c723ea9763ece2ec441533a5cea1e87e3c

See more details on using hashes here.

Provenance

The following attestation bundles were made for click-8.2.2.tar.gz:

Publisher: publish.yaml on pallets/click

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file click-8.2.2-py3-none-any.whl.

File metadata

  • Download URL: click-8.2.2-py3-none-any.whl
  • Upload date:
  • Size: 103.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for click-8.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 52e1e9f5d3db8c85aa76968c7c67ed41ddbacb167f43201511c8fd61eb5ba2ca
MD5 7d180e1baded1a50d5ad31b43a965888
BLAKE2b-256 ec85e7297e34133ae1cfde3bffd30c24e1ef055248251baa877834e048687a28

See more details on using hashes here.

Provenance

The following attestation bundles were made for click-8.2.2-py3-none-any.whl:

Publisher: publish.yaml on pallets/click

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page