UI-Engine-V2
High-performance pygame based UI framework with render-on-change architecture.
Features
- High Performance: Hybrid-mode-rendering ensures no compute is wasted on re-rendering unchanged elements.
- Easy to Use: Intuitive API design makes it simple to create and manage UI components.
- Events for everything: Comprehensive event system for handling user interactions, components have their own events.
- Immediate themes: Style system allows immediate color palette changes across the entire application with one function call.
- Text rendering: Justified text rendering with minimal gaps.
- Easily extensible: You can easily make your own components by extending the base classes.
- Maintainable: Code quality is always in mind, never sacrificing readability for quick fixes.
- Lightweight: Minimal dependencies and a small footprint make it suitable for various projects.
Install
pip install ui-engine
QuickStart
import engine as ui
# Create window
window = ui.Window((800, 600))
# Create a frame
frame = ui.Frame(window, (10, 10), (300, 200))
# Add components
label = ui.Label(
frame,
(10, 10),
"Hello World!",
(None, 18)
)
button = ui.Button(
frame,
(10, 50), # Pos
"Click Me",
(100, 30), # Size
on_click=lambda b: print("Button clicked!")
)
field = ui.Field(
frame,
(10, 90), # Pos
(None, 14), # Font
"Type here...", # Text
size=(200, 25)
)
# Run the application
window.mainloop()
Components
- Frame: Basic rounded rectangle container
- Button: Interactive button with hover states and click handlers
- Label: Text display component with wrapping support
- Field: Text input component with multiline support and IME
- CheckBox: Toggle checkbox with customizable styling
- Radio: Radio button with easy group management
- Toggle: Switch-style toggle component
- Slider: Value slider with customizable range
- ProgressBar: Progress indicator with ultra-smooth animations
- Dropdown: Responsive dropdown menu
- TabFrame: Tab container for organizing content
- SegmentedButton: Multi-option button component
- IconButton: Button component for icon-based interactions
License
This project is licensed under the PolyForm Noncommercial License 1.0.0 - see the COPYING.md file for details.
Contact Omena0 if you want an exception.
Metadata
Release files for ui-engine 7.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ui_engine-7.2.0.tar.gz | 48.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ui_engine-7.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 105.1 kB
Release files / ui_engine-7.2.0.tar.gz
| Download URL | ui_engine-7.2.0.tar.gz |
|---|---|
| Size | 48.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0a463c42a60ed391f83ef334ede8968e81dc1239b9d3ae737b1bc1b1552b108e
|
|
BLAKE2b-256 checksum How to use checksums |
9f8247f0d225249cd19e2e6c5355112e5f4a24f73dd596dc42e5f54ec000e1b1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 19, 2025.
Transparency logRelease files / ui_engine-7.2.0-py3-none-any.whl
| Download URL | ui_engine-7.2.0-py3-none-any.whl |
|---|---|
| Size | 56.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ec3c996fa67f9a10367719ee70e845dd0c4a239247b523d920e25d2e4bbd17d7
|
|
BLAKE2b-256 checksum How to use checksums |
7c15460f142ee15dbe5460ecfd18c4b4f0e0d59c77e5f11f5c542d87c969d40b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 19, 2025.
Transparency log