Show HN: Trogon – An automatic TUI for command line apps

This page summarizes the projects mentioned and recommended in the original post on

Our great sponsors
  • Revelo Payroll - Free Global Payroll designed for tech teams
  • Sonar - Write Clean Python Code. Always.
  • InfluxDB - Collect and Analyze Billions of Data Points in Real Time
  • Onboard AI - Learn any GitHub repo in 59 seconds
  • trogon

    Easily turn your Click CLI into a powerful terminal application

  • sqlite-utils

    Python CLI utility and library for manipulating SQLite databases

    This is really fun. I have an experimental branch of my sqlite-utils CLI tool (which has dozens of sub-commands) running with this now and it really did only take 4 lines of code - I'm treating Trogon as an optional dependency because people using my package as a Python library rather than a CLI tool may not want the extra installed components:

    There's an animated GIF demo of the result here:

  • Revelo Payroll

    Free Global Payroll designed for tech teams. Building a great tech team takes more than a paycheck. Zero payroll costs, get AI-driven insights to retain best talent, and delight them with amazing local benefits. 100% free and compliant.

  • parachute

    This looks interesting, I love Textual so I tried this with one of the apps I wrote:

    Unfortunately, it doesn't seem to work, failing to find the `cli.command()` function (a group function) after I decorate `cli()` with @tui...

  • oil

    Oils is our upgrade path from bash to a better language and runtime. It's also for Python and JavaScript users who avoid shell!

    I believe something of this nature was proposed in the Oilshell under the name Shellac[0]. A shell-agnostic autocompletion format so that the world could finally move on from writing bespoke completion protocols for every new shell language.


  • tldr

    📚 Collaborative cheatsheets for console commands

    You should check out It gives you practical examples for common use cases.

  • uplaybook

    A minimal ansible-inspired playbook runner.

    This is exactly my current experiment on a personal project I'm working on, though I'm trying to create a Textual UI on a dynamic Python argparse CLI. Creating a Textual UI is non-trivial.

    My tool uPlaybook[0] is kind of a CookieCutter [1] / Ansible [2] mashup, and the playbooks typically would have a number of "slots" you can configure to control the templating, like project name, license, if you want to "git init", that sort of thing.

    It currently auto-generates a argparse interface, or it can interactively ask you those questions. But I've been working on a Textual UI as well. I chose argparse over Click largely because I want to work with minimal dependencies, and the Textual UI would be an optional dependency.

    Going to have to check this guy out.


  • Ansible

    Ansible is a radically simple IT automation platform that makes your applications and systems easier to deploy and maintain. Automate everything from code deployment to network configuration to cloud management, in a language that approaches plain English, using SSH, with no agents to install on remote systems.

  • Sonar

    Write Clean Python Code. Always.. Sonar helps you commit clean code every time. With over 225 unique rules to find Python bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.


    the only cheat sheet you need

  • hsh

    better shell

    oh, that's not really type annotations; that's just... cli linting? no idea what to call it but something that will both highlight errors in commands before they fail, and suggest intelligent tab completes.

    I want that too, I've already started building it give me a few months :)

  • textual

    Textual is a Rapid Application Development framework for Python. Build sophisticated user interfaces with a simple Python API. Run your apps in the terminal and (coming soon) a web browser!

    I would also[0] be interested in an argparse equivalent of this for my tool Library[1]



  • library

    xk media library (by chapmanjacobd)

    I would also[0] be interested in an argparse equivalent of this for my tool Library[1]



NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts