Skip to main content

Python Process User Intent: A high-level abstract UI system (TUI, Web, Voice)

Project description

PPUI: Python Process User Intent 🎭

A high-level abstract UI system for Python scripts.

PPUI (pronounced "pui") is the Python implementation of the PUI (Process User Intent) philosophy.

The goal isn't just to "draw a menu"—it's to capture what the user wants to do next. Whether that intent is captured via a terminal hotkey, a web click, or a voice command, the script's logic remains the same.

PPUI: Because your scripts should care about what you want, not just how you say it.

Features

  • High-level Abstractions: Use concepts like Selection and Input without caring about the rendering engine.
  • TUI Implementation: Professional, hotkey-driven terminal menus.
  • Submenu Support: Nested selections with push (drill-down) or inline (expandable) behaviors.
  • Rich Integration: Full support for Rich-formatted output and panels.

Installation

pip install ppui

Usage

High-Level Menu Class

The Menu class provides a declarative way to build interactive loops with callback support.

from ppui import Menu

def run_setup():
    print("Running setup...")

def main():
    menu = Menu("Project Manager", style="bold green")
    menu.add_option("Setup Project", run_setup)
    menu.add_option("View Dashboard", "view_dash")
    
    # Submenu support
    advanced = Menu("Advanced Settings")
    advanced.add_option("DNS Config", lambda: print("Configuring DNS..."))
    menu.add_submenu("Advanced...", advanced, behavior="push")
    
    menu.add_back_item() 
    menu.add_quit_item()
    
    selection = menu.run()

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

ppui-2026.1.20.2.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

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

ppui-2026.1.20.2-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

Details for the file ppui-2026.1.20.2.tar.gz.

File metadata

  • Download URL: ppui-2026.1.20.2.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.7

File hashes

Hashes for ppui-2026.1.20.2.tar.gz
Algorithm Hash digest
SHA256 39d3b1ad0307184769a22cb3434e2a55476576db3ec81a5655c9ffb629ed0336
MD5 6115ea862cf4cc8b87e1215be2a59396
BLAKE2b-256 0514ea835dbd583369e593c8c8256e16e87b140329ccd0b087024ce21622f532

See more details on using hashes here.

File details

Details for the file ppui-2026.1.20.2-py3-none-any.whl.

File metadata

  • Download URL: ppui-2026.1.20.2-py3-none-any.whl
  • Upload date:
  • Size: 6.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.7

File hashes

Hashes for ppui-2026.1.20.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d8b91731d1915470722b96637d06cbcba919c4c2e66a13ce573c70348f62dea5
MD5 0a342626fcf910ae45db3d8e8b6d4fb5
BLAKE2b-256 32590e089fc296f950a3e1bf2bc3ec7194fa857a208207d44a3b7a7925e589a0

See more details on using hashes here.

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