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.
Copyright and License
PLIB3.UI is Copyright (C) 2008-2022 by Peter A. Donis.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. (See the LICENSE.txt file for a copy of version 2 of the License.)
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | da229573dfe675a3c0da61a0b9d117543c16e83a11a0c2533ac6115e09c8be45 |
|
MD5 | 9fe9be998ad7769d74d36a92bb089552 |
|
BLAKE2b-256 | 7c0b25fc5ad2ced784cf9753ead88129ab1749f31bad7fd37fbde65ba356aeed |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | fec34820c84c7eaae9d5579133ae57ffbdc0b4e098dc194df4abf49a9d29728a |
|
MD5 | 1f8c66ee266811a4070b1c8fbc847142 |
|
BLAKE2b-256 | 44c1df0c02dd624577dfa41b38d904121826f549aea1174176b234ce42dd6e35 |