Skip to main content

A simple Python 3 UI framework.

Project description

The PLIB3.UI package contains a simple framework for writing user interfaces in Python. The latest official release is available on PyPI at https://pypi.org/project/plib3.ui/ and the latest source code is available on Gitlab at https://gitlab.com/pdonis/plib3-ui.

The aim of PLIB3.UI is to provide two main features:

  • It lets the same high-level code work with a number of different underlying user interface toolkits, by providing higher-level abstractions of UI functions.

  • It allows you to express the layout of your UI declaratively using Python lists and dicts, and to focus on the code specific to your application with a minimum of boilerplate.

This package is intended as a replacement for the old plib.gui package, providing substantially the same underlying GUI support but with a simpler and easier to use interface.

PLIB3.UI is built using the build PEP 517 build tool with the setuputils_build backend, which uses the setuputils helper module to build the setup.cfg file that is included with the distribution. This module and build backend are available at https://gitlab.com/pdonis/setuputils3.

Installation

The simplest way to install PLIB3.UI is by using pip:

$ python3 -m pip install plib3.ui

This will download the latest release from PyPI and install it on your system. If you already have a downloaded source tarball or wheel, you can have pip install it directly by giving its filename in place of “plib3.ui” in the above command line.

Example Programs

PLIB3.UI comes with example programs that illustrate key features of the package. After installation, these can be found in the $PREFIX/share/plib3.ui/examples directory. If you have a POSIX system (Linux or Mac OSX), script wrappers to run these programs will be installed into the $PREFIX/bin directory.

Note that the example programs are installed as console scripts instead of GUI scripts, even though they are GUI programs. This only makes a difference on Windows, where it ensures that a console will be visible when the programs are run. This is done because these programs output information to the console as a way of shedding light on the internals of what they are doing without cluttering up their GUI interfaces.

The Zen of PLIB3

There is no single unifying purpose or theme to PLIB3, but like Python itself, it does have a ‘Zen’ of sorts:

  • Express everything possible in terms of built-in Python data structures.

  • Once you’ve expressed it that way, what the code is going to do with it should be obvious.

  • Avoid boilerplate code, and boilerplate data. Every piece of data your program needs should have one and only one source.

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

plib3.ui-0.18.tar.gz (299.5 kB view details)

Uploaded Source

Built Distribution

plib3.ui-0.18-py3-none-any.whl (500.2 kB view details)

Uploaded Python 3

File details

Details for the file plib3.ui-0.18.tar.gz.

File metadata

  • Download URL: plib3.ui-0.18.tar.gz
  • Upload date:
  • Size: 299.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.10

File hashes

Hashes for plib3.ui-0.18.tar.gz
Algorithm Hash digest
SHA256 da229573dfe675a3c0da61a0b9d117543c16e83a11a0c2533ac6115e09c8be45
MD5 9fe9be998ad7769d74d36a92bb089552
BLAKE2b-256 7c0b25fc5ad2ced784cf9753ead88129ab1749f31bad7fd37fbde65ba356aeed

See more details on using hashes here.

File details

Details for the file plib3.ui-0.18-py3-none-any.whl.

File metadata

  • Download URL: plib3.ui-0.18-py3-none-any.whl
  • Upload date:
  • Size: 500.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.10

File hashes

Hashes for plib3.ui-0.18-py3-none-any.whl
Algorithm Hash digest
SHA256 fec34820c84c7eaae9d5579133ae57ffbdc0b4e098dc194df4abf49a9d29728a
MD5 1f8c66ee266811a4070b1c8fbc847142
BLAKE2b-256 44c1df0c02dd624577dfa41b38d904121826f549aea1174176b234ce42dd6e35

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page