A modern UI library for Python aiming simplicity.
Project description
PyUIkit is a modern, web-like, component-based Python GUI framework built on top of CustomTkinter. It aims to bring simplicity and web-like component structure to Python GUI development, allowing developers to create windows, divs, and components without dealing with complex layout management. It allows you to create beautiful and interactive desktop applications with minimal code, using Div-based layouts and reusable UI components.
Features
- Create nested layouts with
Divcontainers. - Use Text, Input, Button components and more.
- Interactive components with event handling.
- Component IDs for dynamic updates.
- Easy to use for both beginners and experienced developers.
- Supports modern styling and dark/light themes (future updates).
Installation
pip install pyuikit
Getting started
- Create a simple window
from pyuikit import Body
app = Body(width=400, height=300, bg_color='white')
app.run()
This creates a blank window with the specified size and background color.
- Add components inside a Div
from pyuikit import Body, Div
from pyuikit.components import Text, Button, Input
def greet():
name = Input.get_input(id='name_input')
Text.set_text(id='greeting', new_text=f'Hello, {name}!')
app = Body(width=400, height=300, bg_color='white')
Div(
width=360,
height=250,
children=[
Text(text='Enter your name:'),
Input(placeholder='Name',id='name_input'),
Button(text='Greet',on_click=greet),
Text(text='', id='greeting')
]
)
app.run()
Note: Every app must have at least one top-level Div to hold components.
Documentation:
Full documentation and examples:
Other components:
- Button component
- Text component
- Input component
- Filedialog component
- Slider component
- Radiobutton component
- Progressbar component
- Dropdown component
- Switch component
- Checkbox component
- Toast component
Example Applications:
Note: PyUIkit is now in a stable release, but issues may still occur. We welcome and appreciate contributions! Feel free to submit PRs or report any problems via the GitHub Issues tab.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pyuikit-1.1.1.tar.gz.
File metadata
- Download URL: pyuikit-1.1.1.tar.gz
- Upload date:
- Size: 38.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cdbd81ffcb0b3bfe969b79122954c8a19d3467ce3abcb68e13146ffa1ec0c9d2
|
|
| MD5 |
0ed41719faab79fd6733fe97298c7569
|
|
| BLAKE2b-256 |
3ee9ddc3c07c01efa9910c7e14e486ee214706bc123fee33e82ea3cdd9571427
|
File details
Details for the file pyuikit-1.1.1-py3-none-any.whl.
File metadata
- Download URL: pyuikit-1.1.1-py3-none-any.whl
- Upload date:
- Size: 44.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e5d1375bf8843e7e596d6b925bd2505aaed94ff6e7cb824cbd152ce34e6b6efe
|
|
| MD5 |
1e51f9cb780952c62a30079626802ab3
|
|
| BLAKE2b-256 |
377409612b18b430a77d32ca2631d99708af52c2473e4f0419112c20946ed4e4
|