Inquirer Textual
Versatile library for terminal user input in Python
About
All terminal programs start small. Some stay small, and some become incredibly big. The goal of this Python library is to make user input simple for small programs, but also support a smooth transition to a comprehensive UI library as your program grows.
This library is based on the sophisticated Textual TUI framework.
Example
The Python code for the example above:
from inquirer_textual import prompts
if __name__ == '__main__':
answer = prompts.checkbox("Planets:", choices=[
'Mercury', 'Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn',
'Uranus', 'Neptune'
])
print(answer)
With uv you can run the example out of the box:
uv run --with inquirer-textual checkbox.py
Key features and design principles
- Keep simple things simple: High-level prompts API for getting user input
- Support evolving programs: From small scripts to full-featured TUI applications
- Inquirer-like syntax: API similar to many other Inquirer libraries
- Single dependency: The Textual TUI framework

