Skip to content

ZeroIntensity/prompts.py

Repository files navigation

prompts.py

Beautiful prompts for Python.

PyPI - Version PyPI - Python Version

Inspired by the prompts package on NPM. This project was written specifically for view.py


Example

Alt Text

from prompts import ask, ValidatorResult

def validate(name: str) -> ValidatorResult:
    if name == "andrew":
        return "You're not allowed here, buddy!"

    return True

ask("What's your name?", validate=validate)

Features

  • Fully typed
  • Extendable
  • Drop-in support for Click

Click Example

from prompts.integration import PrettyOption
import click

@click.command()
@click.option(
    "--name",
    default="Peter",
    prompt=True,
    cls=PrettyOption,  # Enable prompts.py inputs!
)
def main(name: str):
    ...

if __name__ == "__main__":
    main()

Installation

$ pip install prompts.py

License

prompts.py is distributed under the terms of the MIT license.