Name | kkpyui JSON |
Version |
0.29.9
JSON |
| download |
home_page | None |
Summary | Tkinter-based GUI widget library for building small tool applications |
upload_time | 2024-05-13 14:30:17 |
maintainer | None |
docs_url | None |
author | Beinan Li |
requires_python | <4.0,>=3.11 |
license | None |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# kkpyui
Tkinter-based GUI widget library for building small tool applications
## Motivation
- Small GUI tools come in handy in experiments and ad-hoc productivity boosts
- Full-fledged GUI toolkits such as GTK, Qt, web-app frameworks are often too heavy for these purposes
- Python is my go-to dev language. Its bundled Tkinter (with its `ttk` ) in theory is well-suited for small tool development, but it is often criticized for being outdated and too clunky to use; however, it remains attractive for distribution convenience
- This project thus aims to improve the dev experience of Tkinter for developing small tools. The approach is to create a thin wrapper and iron flat some cross-platform glitches, hoping to reduce boilerplates in appplication code
## Features
- A set of building blocks for creating single-page form UI, with built-in data-binding
- Model-View-Controller architecture
- Per-entry validation, default value, reset, tracer, and help doc
- Saving and loading all form entries as presets
## Demo
```sh
cd /path/to/kkpyui
poetry install
# run form demo
poetry run python demo/form.py
# run controller demo, requireing Csound to be installed and in PATH
poetry run python demo/controller.py
```
Raw data
{
"_id": null,
"home_page": null,
"name": "kkpyui",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.11",
"maintainer_email": null,
"keywords": null,
"author": "Beinan Li",
"author_email": "li.beinan@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/02/e0/8490957322c15a994c48034c860df610e4f3a76758d7b9d633321c456890/kkpyui-0.29.9.tar.gz",
"platform": null,
"description": "# kkpyui\n\nTkinter-based GUI widget library for building small tool applications\n\n## Motivation\n\n- Small GUI tools come in handy in experiments and ad-hoc productivity boosts\n\n- Full-fledged GUI toolkits such as GTK, Qt, web-app frameworks are often too heavy for these purposes\n\n- Python is my go-to dev language. Its bundled Tkinter (with its `ttk` ) in theory is well-suited for small tool development, but it is often criticized for being outdated and too clunky to use; however, it remains attractive for distribution convenience\n\n- This project thus aims to improve the dev experience of Tkinter for developing small tools. The approach is to create a thin wrapper and iron flat some cross-platform glitches, hoping to reduce boilerplates in appplication code\n\n## Features\n\n- A set of building blocks for creating single-page form UI, with built-in data-binding\n\n- Model-View-Controller architecture\n\n- Per-entry validation, default value, reset, tracer, and help doc\n\n- Saving and loading all form entries as presets\n\n## Demo\n```sh\ncd /path/to/kkpyui\npoetry install\n\n# run form demo\npoetry run python demo/form.py\n\n# run controller demo, requireing Csound to be installed and in PATH\npoetry run python demo/controller.py\n```\n",
"bugtrack_url": null,
"license": null,
"summary": "Tkinter-based GUI widget library for building small tool applications",
"version": "0.29.9",
"project_urls": null,
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "dca95b312d4e95ca36fe91d9fb5dc5d7c5ddba33ed463ed7ce5dec30b7518980",
"md5": "d9b33c1ca6729c3a931bac3f8df5264a",
"sha256": "bfdb30fb152526bc0cfda0146dd7befed48f71708fd78fc779a30a10764a5b6b"
},
"downloads": -1,
"filename": "kkpyui-0.29.9-py3-none-any.whl",
"has_sig": false,
"md5_digest": "d9b33c1ca6729c3a931bac3f8df5264a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.11",
"size": 837028,
"upload_time": "2024-05-13T14:30:14",
"upload_time_iso_8601": "2024-05-13T14:30:14.288881Z",
"url": "https://files.pythonhosted.org/packages/dc/a9/5b312d4e95ca36fe91d9fb5dc5d7c5ddba33ed463ed7ce5dec30b7518980/kkpyui-0.29.9-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "02e08490957322c15a994c48034c860df610e4f3a76758d7b9d633321c456890",
"md5": "ac14c083c639dbedc8f39181f3e42083",
"sha256": "92528becec6ff89b96cbe154fe3bcae22360b59748c578ad1bae5145636fddf7"
},
"downloads": -1,
"filename": "kkpyui-0.29.9.tar.gz",
"has_sig": false,
"md5_digest": "ac14c083c639dbedc8f39181f3e42083",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.11",
"size": 787104,
"upload_time": "2024-05-13T14:30:17",
"upload_time_iso_8601": "2024-05-13T14:30:17.319591Z",
"url": "https://files.pythonhosted.org/packages/02/e0/8490957322c15a994c48034c860df610e4f3a76758d7b9d633321c456890/kkpyui-0.29.9.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-05-13 14:30:17",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "kkpyui"
}