skillfed

trogon

Automatically generate a Textual TUI for your Click CLI

trogon v0.6.0 337.4K downloads/30d#7,449 on PyPI2,838
Permissive license MIT AGING released

What it is and what it does

Trogon is a decorator-based tool that inspects a Click CLI application and automatically generates a Textual-based terminal user interface for it. Instead of users memorizing command syntax and options, they interact with a visual menu to discover and configure commands. The tool works by extracting the schema from your Click app—its options, switches, and help text—and rendering an interactive TUI where users can edit parameters and execute commands.

The integration is minimal: adding just two lines of code (an import and a decorator) to an existing Click application enables a new `tui` command that launches the interface. Trogon depends on textual for the UI framework and click for CLI introspection, both of which are well-maintained libraries. The package is in Beta and supports Python 3.8 through 3.12 across macOS, Windows, and Linux.

Use it for:

  • Make a CLI tool more discoverable for infrequent users who struggle to remember command syntax and available options.
  • Provide a graphical alternative to command-line invocation for end users who prefer visual interfaces over typing.
  • Reduce support burden by offering a self-documenting UI that displays all available options and help text interactively.
  • Quickly prototype a TUI wrapper around an existing Click application without rewriting the underlying CLI logic.
  • Enable non-technical users to run complex CLI tools by hiding command-line syntax behind a friendly menu interface.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Trogon auto-generates a terminal user interface (TUI) for Click command-line applications, letting users interact with CLI options through a visual menu instead of typing commands.

Yes, if you maintain a Click CLI and want to offer users a low-friction TUI alternative. The integration is trivial (two lines), dependencies are minimal and stable, and the MIT license poses no restrictions. The aging maintenance status (681 days since last release) is a minor concern—verify compatibility with your current Click and Textual versions before relying on it for production—but the lack of known vulnerabilities and active repository suggest it remains usable.

Install

trogon on PyPI

pip

pip install trogon

uv

uv add trogon

poetry

poetry add trogon

Installing trogon

Before you install

Low friction install with only two runtime dependencies (textual and click). The project is in Beta status and has not been updated in 681 days, though the repository remains active and well-starred.

License in practice

MIT license is permissive; you can use, modify, and distribute this package with minimal restrictions, making it suitable for both open-source and proprietary projects.

Quickstart

pip install trogon

from trogon import tui
import click

@tui()
@click.group()
def cli():
    pass

if __name__ == "__main__":
    cli()

Requires Python 3.8.1 or later; works on macOS, Windows 10/11, and Linux.

Verify before relying

  • Whether Typer support mentioned in the description is fully functional or still experimental.
  • Performance characteristics when applied to CLIs with very large numbers of options or subcommands.
  • Whether the aging maintenance status (681 days since last release) affects compatibility with recent Click or Textual versions.

Package facts

License MIT (permissive)
Python support supports the current Python release (<4.0.0,>=3.8.1)
Install friction low — pure-Python wheel
Runtime dependencies 2 — textual, click
Maintenance aging — 681 days since the last release
Last repo commit
First released
Downloads 337,437/month — #7,449 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: trogon-0.6.0-py3-none-any.whl

Development Status :: 4 - BetaEnvironment :: ConsoleIntended Audience :: DevelopersIntended Audience :: End Users/DesktopIntended Audience :: Information TechnologyIntended Audience :: Other AudienceLicense :: OSI Approved :: MIT LicenseOperating System :: MacOSOperating System :: Microsoft :: Windows :: Windows 10Operating System :: Microsoft :: Windows :: Windows 11Operating System :: POSIX :: LinuxProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software Development :: Documentation

Tags

cli to tui generatorclick command ui wrapperterminal user interface buildercommand line app guiinteractive cli interfaceclick decorator tuitextual cli wrapper
cli-ui-generationtextual-framework

More Documentation packages