You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
slook 0006afdf5d
fix(TTkLineEdit): paste str (#610)
2 weeks ago
.github chore: create cleaner env (#608) 2 weeks ago
.vscode choe: add tests (#606) 2 weeks ago
apps chore: responsive tab close button (#609) 2 weeks ago
demo chore: responsive tab close button (#609) 2 weeks ago
docs chore: create cleaner env (#608) 2 weeks ago
libs fix(TTkLineEdit): paste str (#610) 2 weeks ago
multiplexers fix(libs): update sys.path to run test apps directly from the repo (#482) 5 months ago
tests chore: basic command palette implementation (#598) 3 weeks ago
tools chore(crossTools): improve typing (#571) 3 months ago
tutorial refactor: moved the sandbox to pyTermTk-docs 12 months ago
.gitignore updated gitignore 1 year ago
.release-please-config.json chore: trying extra params in the release-please config 9 months ago
.release-please-manifest.json chore: release main (#527) 2 months ago
CHANGELOG.md chore: release main (#527) 2 months ago
LICENSE
Makefile chore: create cleaner env (#608) 2 weeks ago
README.md chore: update front page banners (#510) 4 months ago
pyproject.toml chore: create cleaner env (#608) 2 weeks ago
run.dumbPaintTool.sh build: define the monorepo structure (#361) 12 months ago
run.tlogg.sh refactor(TabWidget)!: tab request close event need to be handled inside the app 11 months ago
run.ttkDesigner.sh build: define the monorepo structure (#361) 12 months ago
run.ttkode.sh feat: added activity bar to ttkode 11 months ago

README.md

Serial Linux Windows OSX HTML5

pypi_version Static Badge Static Badge

Python Test Status pyTermTk_version pypi_version Usage

pyTermTk_snyk advisor pyTermTk_piptrends age pyTermTk_piptrends downloads pyTermTk_piptrends downloads

hero

pyTermTk

(python Terminal Toolkit) is a Text-based user interface library (TUI) Evolved from the discontinued project pyCuT and inspired by a mix of Qt5,GTK, and tkinter api definition with a touch of personal interpretation

https://github.com/user-attachments/assets/888e745a-ea00-4d03-b6ec-273319d54ea7

Features


Try the Sandbox straight from your browser

SandBox

Powered by Pyodide and xterm.js and CodeMirror5 and w2ui


the Tutorials and the Examples

Be inspired by the Tutorials and the Examples

Api Definitions

Don't get bored by the Api Definitions

ttkode

Burn your fingers with the Terminal Studio Kode

ttkDesigner

Smell deliciousness with the official pyTermTk tool for designing and building Text-based user interfaces (TUIs)

theDumbPaintTool

Unravel your inner artist with The Terminal ASCII Photoshop


Install/Upgrade

pyTermTk is available on PyPI

pip3 install --upgrade pyTermTk

Install from the dev branch:

pip install --upgrade git+https://github.com/ceccopierangiolieugenio/pyTermTk.git#subdirectory=libs/pyTermTk

Quick Test/Try - no install required

Clone

git clone https://github.com/ceccopierangiolieugenio/pyTermTk.git
cd pyTermTk

Demos

# Press CTRL-C to exit (CTRL-Break on Windows)

# Showcase Demo
python3 demo/demo.py -f -t

# run the ttkDesigner
run.ttkDesigner.sh

# run The Dumb Paint Tool
# it require pillow
#   pip install pillow
run.dumbPaintTool.sh

# Text edit with "Pygments" highlight integrated
# it require pygments
#   pip install pygments
python3 tests/test.ui.018.TextEdit.Pygments.py README.md

Projects using pyTermTk

  • ttkDesigner - the official pyTermTk tool for designing and building Text-based user interfaces (TUIs)
  • the DumbPaintTool - The Terminal ASCII Photoshop
  • tlogg - A fast, advanced log explorer.
  • ttkode - TerminalToolKit (Studio) Code (editor)
  • pytest-fold - A Pytest plugin to make console output more manageable when there are multiple failed tests
  • pytest-tui - A Text User Interface (TUI) for Pytest, automatically launched after your test run is finished
  • breakoutRL - Breakout the Roguelike
  • 7drl-2024 - A Snake🐍 on a Plane - The Roguelike
  • Honourable mention

    • bpytop - Linux/OSX/FreeBSD resource monitor
      This was the base inspiration for my core library
  • Python

    • urwid - Console user interface library for Python
    • pyTermGUI - A simple yet powerful TUI framework for your Python (3.7+) applications
    • Textual - TUI (Text User Interface) framework for Python inspired by modern web development
    • Rich - Python library for rich text and beautiful formatting in the terminal
    • PyCuT - terminal graphic library loosely based on QT api (my previous failed attempt)
    • pyTooling.TerminalUI - A set of helpers to implement a text user interface (TUI) in a terminal.
  • Non Python