Skip to main content

pip-ui-tkinter

A Tkinter desktop GUI that puts a friendly face on Python's most-used packaging tools. Instead of remembering flags across pip, pipx, build, twine, virtualenv, pip-audit, hatch, flit, pypi-server, and devpi, you click through them in a single window — with discoverable forms, live output, and guardrails on the destructive bits.

Why pip-ui-tkinter

  • One window, ten tools. Switch between pip, pipx, build, twine, virtualenv, pip-audit, hatch, flit, pypi-server, and devpi from a single tool switcher. No need to context-switch between docs, terminals, and tutorials.
  • Discoverable commands. Every subcommand and flag is laid out as a tree with a generated form. You see what's available without --help-ing your way through ten layers of subcommands.
  • Real CLI underneath. The UI doesn't reimplement anything — it constructs the exact CLI invocation and runs it. The full argv is shown before and after every run, so you can copy/paste it into a script or learn what the UI just did.
  • Safety rails. Commands are classified as read-only, environment-modifying, destructive, or risky-config. A --safe-mode flag prompts for confirmation before anything that would uninstall, purge, or rewrite configuration. Global installs are flagged. Secrets in flags are redacted in history and output.
  • Pure Python, pure stdlib UI. Tkinter ships with Python — no Electron, no browser, no npm. The app launches fast and runs anywhere Python and Tk do.

Features

Multi-tool support

Each tool is a plugin with its own command catalog, run mode, and (where relevant) custom panel:

Tool What it does in pip-ui
pip Install, uninstall, list, freeze, show, check, inspect, configure, cache, debug
pipx Install and manage CLI apps in isolated envs; pick the Python they use
build Build sdists and wheels for the current project
virtualenv Create virtual environments with a guided form
twine Upload, check, and register distributions
pip-audit Scan an env or requirements file; results render in a dedicated panel
hatch Project and environment commands with an environment panel
flit Build and publish flit-managed projects
pypi-server Run a local PyPI-compatible index for testing
devpi Drive a devpi server and client from a dedicated panel

Interpreter & environment awareness

  • Auto-discovers the system Python, the active VIRTUAL_ENV, project .venv, and python/py on PATH.
  • Switch interpreters per-run from the dropdown; the UI invokes commands via python -m <tool> against the selected interpreter so you can target any env.
  • Working-directory picker — point any command at a specific project.
  • --diagnostics mode prints a Markdown report on the selected interpreter without launching the GUI.

Forms generated from command specs

  • Every command knows its required and optional arguments, types, choices, and help text. The form is rendered from that spec, so you get the right widget (checkbox, picker, multi-value, text) for the right flag.
  • Per-command global options dialog (proxy, index URL, trusted hosts, etc.) so you don't repeat yourself.
  • Requirements-file picker, index selector, and certificate tester live alongside the form.

Live output and history

  • Stdout/stderr stream into an output panel as the command runs — no waiting for completion to see what happened.
  • Per-command output cache: re-selecting a command restores its last output instead of a blank panel.
  • Command history records every run (argv, exit code, duration). Disable with --no-history if you prefer not to write it to disk.
  • Common pip errors are intercepted and translated to a plain-language explanation.

Safety and secrets

  • --safe-mode puts a confirmation dialog in front of any destructive or config-mutating command.
  • Auto-detection of global installs warns before they're committed.
  • Tool plugins declare which flags carry secrets (tokens, passwords); those values are redacted in the output panel and history file.

Self-update check

  • The app checks for newer versions of pip-ui-tkinter in the background and surfaces an upgrade hint when one's available. Manual checks available from the menu.

Quick start

pipx install pip-ui-tkinter
pip-ui

Useful flags:

pip-ui --interpreter /path/to/python   # start with a specific interpreter selected
pip-ui --working-directory ./myproj    # start in a specific project dir
pip-ui --safe-mode                     # confirm before destructive commands
pip-ui --no-history                    # do not record history to disk
pip-ui --diagnostics                   # print env diagnostics and exit

To get the optional tools that aren't pip itself, install the matching extra (build, virtualenv, twine, pip-audit, hatch, flit, pipx, pypiserver, devpi) or all-tools for everything.

Requirements

  • Python 3.10+
  • Tkinter (bundled with python.org installers; on Linux install your distro's python3-tk package)

Links

License

MIT — see LICENSE.

Metadata

Release files for pip-ui-tkinter 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pip-ui-tkinter 0.2.0
File Size Uploaded
pip_ui_tkinter-0.2.0.tar.gz 110.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pip-ui-tkinter 0.2.0
File Interpreter ABI Platform
pip_ui_tkinter-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 217.3 kB

Release files / pip_ui_tkinter-0.2.0.tar.gz

Download URL pip_ui_tkinter-0.2.0.tar.gz
Size 110.0 kB
Tags Source
SHA-256 checksum
How to use checksums
798097331c7771b7093b2ec7e17b4187790ffda6a950aab0fcfd8430e579ff24
BLAKE2b-256 checksum
How to use checksums
bd84984d4362fa53565099b02e0b51194dd2d4493c2a267c83b09c5542e19dea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 24, 2026.

Transparency log

Release files / pip_ui_tkinter-0.2.0-py3-none-any.whl

Download URL pip_ui_tkinter-0.2.0-py3-none-any.whl
Size 107.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6ff9fdac6ff3b94f333eb7a1f8390a7ee5863e92cb5da53841563f93513c1197
BLAKE2b-256 checksum
How to use checksums
b0dcc7466cd81e2b517771e4d7af3e7a4862ff73b8c1a92c9027a74a80f0b639
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 24, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page