Skip to main content

simple and robust terminal user interface library for the command line.

Project description

pytermgui

A simple module to display UI in the terminal, as well as to read input.

For now, a good example of use would be teahaz-client, but documentation will be coming soon.

getting started

# version with comments & explanation: examples/readme_example.py

from pytermgui import Container,container_from_dict,getch

data = {
    "ui__title": "Test data",
    "key": "value",
    "key2": "value2",
    "ui__button": {
        "id": "test-data_button",
        "value": "publish!"
    }
}

containers = container_from_dict(data,width=40)
c = containers[0]

c.select()
c.center()
print('\033[2J')
print(c)

while True:
    key = getch()

    if key == "ARROW_UP":
        c.selected_index -= 1

    elif key == "ARROW_DOWN":
        c.selected_index += 1

    elif key == "SIGTERM":
        raise KeyboardInterrupt

    c.select()
    print(c)

readme-example

images

examples/basic_menu.py:

basic_menu

examples/project_picker.py:

project_picker

teahaz menu picker:

menu_picker

teahaz file picker:

filepicker

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

pytermgui-0.0.5.tar.gz (18.4 kB view details)

Uploaded Source

File details

Details for the file pytermgui-0.0.5.tar.gz.

File metadata

  • Download URL: pytermgui-0.0.5.tar.gz
  • Upload date:
  • Size: 18.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for pytermgui-0.0.5.tar.gz
Algorithm Hash digest
SHA256 eea3fbe649115ca9204ac688d3e69cbbf9c00818ae5a0a3374eeacd7a33ff6f1
MD5 5990912177982f830306e2acce89fad3
BLAKE2b-256 97bad7f3458f2e209222cd452d90cc0aaf7c6a3d439e5a8c5b7c3010454a3d26

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