pkg.sopackage field notes

brew / rank 2823

Install wxpython with Homebrew

Python bindings for wxWidgets. Version 4.3.1 via Homebrew; verified 2026-07-31.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install wxpython

provider-native install command

overview

Package summary

Python bindings for wxWidgets

Commands and aliases

  • helpviewer
  • img2png
  • img2py
  • img2xpm
  • pycrust
  • pyshell
  • pyslices
  • pyslicesshell
  • pywxrc
  • wxdemo
  • wxdocs
  • wxget

history

Project history and usage

wxPython is the Python binding for wxWidgets, giving Python applications native GUI widgets on Windows, macOS, Linux, and other Unix-like systems. Its history spans hand-written bindings in the 1990s, SWIG-generated Classic wxPython, and the Phoenix rewrite used by modern wxPython 4.x.

Project history

The official history says wxPython began in 1996, after Robin Dunn discovered Python bindings while evaluating cross-platform GUI toolkits. Dunn worked with Harri Pasanen, with help from Edward Zimmerman, to advance early wxWidgets bindings into wxPython 0.2.

The first versions were maintained by hand, which became fragile as the codebase grew. In 1997 Dunn used SWIG to reimplement the bindings, and in summer 1998 the first modern wxPython release appeared for wxWidgets 2.0. The changelog still goes back to release 0.3 in 1998.

Project Phoenix later replaced Classic wxPython with a from-the-ground-up implementation focused on speed, maintainability, extensibility, Python 3 compatibility, and removing accumulated cruft. The official overview notes that Phoenix is intentionally not fully backwards compatible, though many applications can migrate with minor changes.

Adoption history

wxPython became one of Python's major desktop GUI choices alongside Tkinter, PyQt/PySide, and later web-driven app shells. Its appeal was always native widgets with little platform-specific code, backed by wxWidgets rather than an emulated toolkit.

The Phoenix transition was also an adoption transition: users had to move old Classic code to Python 3-era APIs. The official docs still foreground the Migration Guide for programmers porting from Classic wxPython to Phoenix.

How it is used

Developers import wx, create a wx.App, instantiate frames and controls, bind events, and run MainLoop. The package also includes demo, shell, resource, image-conversion, documentation, and inspection-oriented tools that make it useful as a full GUI development environment rather than just a runtime binding.

In packaging, wxPython is notable because it wraps a large C++ GUI toolkit and ships platform-specific wheels or builds tied to wxWidgets versions. The changelog records ongoing work to keep pace with Python, wxWidgets, operating-system, and build-tool changes.

Why package nerds care

wxPython is package-nerd significant because it is a classic binding package: a large native-code bridge that lets a high-level language use a mature C++ toolkit. Its Classic-to-Phoenix migration is a textbook example of how language runtimes, binding generators, binary wheels, and GUI frameworks force long-lived packages to reinvent themselves.

Timeline

  • 1995: Robin Dunn discovered wxWidgets and Python while looking for a cross-platform C++ GUI toolkit.
  • 1996: Official history dates the start of wxPython history to before the turn of the century, back in 1996.
  • 1997: SWIG was adopted to reduce the maintenance burden of hand-written bindings.
  • 1998: The first modern wxPython release appeared in summer 1998; the changelog goes back to 0.3.
  • 2010s: Project Phoenix rebuilt wxPython for maintainability and Python 3.
  • 2025-04-09: wxPython 4.2.3 released, built on wxWidgets 3.2.7.
  • 2026-02-08: wxPython 4.2.5 released, built on wxWidgets 3.2.9.

Related projects

  • wxPython is related to wxWidgets, Project Phoenix, Classic wxPython, SWIG, Tkinter, PyQt/PySide, wxGlade, wxFormBuilder, and Python desktop GUI applications.

security posture

Risk level: yellow

broad file, network, media, or database tool signal. generalized runtime or code generation signal.

Risk classifier

yellow risk · medium confidence · runtime

Why

  • broad file, network, media, or database tool signal
  • generalized runtime or code generation signal

Signals

  • text:shell
  • text:ssh

Install behavior

  • No Homebrew bottle metadata was recorded.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
helpviewerexecutableindexed executableDiscovered from the local executable index.
img2pngexecutableindexed executableDiscovered from the local executable index.
img2pyexecutableindexed executableDiscovered from the local executable index.
img2xpmexecutableindexed executableDiscovered from the local executable index.
pycrustexecutableindexed executableDiscovered from the local executable index.
pyshellexecutableindexed executableDiscovered from the local executable index.
pyslicesexecutableindexed executableDiscovered from the local executable index.
pyslicesshellexecutableindexed executableDiscovered from the local executable index.
pywxrcexecutableindexed executableDiscovered from the local executable index.
wxdemoexecutableindexed executableDiscovered from the local executable index.
wxdocsexecutableindexed executableDiscovered from the local executable index.
wxgetexecutableindexed executableDiscovered from the local executable index.

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-08-03
manager version4.3.1
manager updated2026-07-31
local dataunknown
upstreamnot available
latest detectednot detected
  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:wxpython
Version4.3.1
Package managerHomebrew
Homepagehttps://www.wxpython.org/
Last updated2026-07-31T07:12:58Z
Pulseupdated
Bottlenot recorded
Servicenone declared

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • curated package history
  • pkgdb category and tag curation