Skip to main content

wp-tui

A text-based terminal UI for interacting with a self-hosted WordPress site — create and edit posts and pages, work with the native block editor, format text with markdown-style shortcuts that map to WordPress's real inline formats, upload or pick images from the media library, and edit post settings (status, slug, excerpt, categories/tags, featured image). Mouse navigation throughout, with an optional Vim-style key layer.

Requirements

  • Python 3.12 or newer
  • A self-hosted WordPress site with the REST API enabled, and an Application Password (WordPress Admin → Users → Profile → Application Passwords). The site must be served over HTTPS — wp-tui refuses to send credentials over plaintext http://.

Installation

The recommended install is with pipx (isolated, cross-platform):

pipx install wptui
wptui

A Homebrew tap is planned:

# once the tap is published
brew install gboone/tap/wptui

You'll be prompted for your site URL, username, and Application Password. The password is stored in your OS keychain via keyring; only non-secret profile data is written to the config file.

Known limitation — headless/SSH

keyring needs an OS secret backend (macOS Keychain, Linux Secret Service, Windows Credential Locker). On a headless machine reached over SSH with no Secret Service running, credential storage will fail, so wp-tui cannot save or load the Application Password there. This affects any install method; it is a runtime environment limitation, not a packaging one.

From source (development)

python3 -m venv .venv
. .venv/bin/activate
pip install -e ".[dev]"
python -m wptui

For UI debugging, run textual console in another terminal and launch with textual run --dev wptui.app:WPTuiApp.

Test

pytest

Metadata

Release files for wptui 0.1.4

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

Source distribution (sdist)

Source distribution for wptui 0.1.4
File Size Uploaded Provenance
wptui-0.1.4.tar.gz 131.5 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for wptui 0.1.4
File Interpreter ABI Platform
wptui-0.1.4-py3-none-any.whl Python 3 none any Details

Total release size: 232.9 kB

Release files / wptui-0.1.4.tar.gz

Download URL wptui-0.1.4.tar.gz
Size 131.5 kB
Tags Source
SHA-256 checksum
How to use checksums
7658dbf06020cc743a84abc70b2ae04ec28e0227498e8317dd3908d277fa2c3d
BLAKE2b-256 checksum
How to use checksums
4e6124b7d7dfbe1583df9c7acc69c8ca9e28c398a78c2c83033340ed07f2008b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / wptui-0.1.4-py3-none-any.whl

Download URL wptui-0.1.4-py3-none-any.whl
Size 101.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4eeca5a261e7a7661c92660497f505e12f12458c191deecb9915014d93408ec1
BLAKE2b-256 checksum
How to use checksums
39dd130e078ec71972195fc0d2fe63b6c8a157f0df67cbf21fb0970a31f9e641
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Security for wptui 0.1.4

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

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