{"id":16415517,"url":"https://github.com/mwd1993/quykgui","last_synced_at":"2026-06-15T08:31:39.530Z","repository":{"id":139165318,"uuid":"442111627","full_name":"mwd1993/QuykGui","owner":"mwd1993","description":"A way to quickly create GUI elements, while also providing easy to add custom functionality, and also allows you to access the Tkinter object itself if you need to 'get down and dirty'.","archived":false,"fork":false,"pushed_at":"2022-01-02T11:29:04.000Z","size":9084,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-17T08:29:12.215Z","etag":null,"topics":["graphical-user-interface","gui","interface","interface-builder","python","quykgui","quykhtml","tkinter","tkinter-gui"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mwd1993.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-12-27T09:24:06.000Z","updated_at":"2022-01-02T11:29:06.000Z","dependencies_parsed_at":null,"dependency_job_id":"d092cb3b-636d-44d0-aeee-9ac86ad92021","html_url":"https://github.com/mwd1993/QuykGui","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mwd1993/QuykGui","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mwd1993%2FQuykGui","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mwd1993%2FQuykGui/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mwd1993%2FQuykGui/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mwd1993%2FQuykGui/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mwd1993","download_url":"https://codeload.github.com/mwd1993/QuykGui/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mwd1993%2FQuykGui/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34355157,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-15T02:00:07.085Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["graphical-user-interface","gui","interface","interface-builder","python","quykgui","quykhtml","tkinter","tkinter-gui"],"created_at":"2024-10-11T07:06:01.271Z","updated_at":"2026-06-15T08:31:39.252Z","avatar_url":"https://github.com/mwd1993.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# QuykGui\nA way to quickly create GUI elements, while also providing easy to add custom functionality.  \nAlso, if need be, you can directly access the tkinter object by reference: `QuykGuiObject.object`.  \nThis means, you can always do anything tkinter allows for, if you need to do things QuykGui does not allow.  \nThink of QuykGui as a higher level way to make interfaces while still allowing for lower level (tkinter objects) access.\n\n\n### Basic Example | add easy search filtering\n\n![](https://github.com/mwd1993/QuykGui/blob/main/quykgui%20example.gif)\n\n### Example 1: The code behind the GIF Example\n\n```python\nfrom QuykGui import qgui\n\n# Define methods to be used when we interact\n# with the interface elements\n# ------------------------------------------\ndef list_click_show_item(e=''):\n    global window\n    main_list = window['main'].get_by_id('main-list')\n    selected = main_list.get_selected()\n    print(selected)\n    window['ok'].get_by_id('ok-text').set_text('You clicked on ' + str(selected))\n    window['ok'].show()\n\n\ndef input_sort_gui_list(a=''):\n    global window\n    main_list = window['main'].get_by_id('main-list')\n    main_input = window['main'].get_by_id('main-input')\n    _show = []\n    for li in main_list.get_list():\n        if main_input.get_value().lower() in li.lower():\n            _show.append(li)\n    if len(_show) == 0:\n        main_list.set_list(fruit_list)\n        return fruit_list\n    main_list.set_list(_show)\n    return _show\n\n\ndef ok_close():\n    global window\n    window['ok'].hide()\n\n\ndef button_exit_program():\n    exit()\n# ------------------------------------------\n# ------------------------------------------\n\n# Initialize QuykGui\nq = qgui()\n\n# Create a few windows we will be using\n# for our Graphical Interface\nwindow = {\n    'main': q.new_window('Main Window'),\n    'ok': q.new_window('Ok').hide()\n}\n\n# Easily Customize/Edit our Ok window\nwindow['ok'].set_size([300, 100])\nwindow['ok'].new_text('some text here', id='ok-text')\nwindow['ok'].new_btn('Ok', on_click_callback=ok_close)\n\n# Easily Customize/Edit our Main window\nwindow['main'].set_size([600, 300])\nwindow['main'].new_text('Type part of a substring below to search through the list (press enter to search)')\nwindow['main'].new_input(on_value_change=input_sort_gui_list, id='main-input')\nfruit_list = open('fruit list.txt','r').readlines()\nwindow['main'].new_list(fruit_list, on_click_callback=list_click_show_item,id='main-list')\nwindow['main'].new_btn('Exit Program', on_click_callback=button_exit_program,id='main-button')\n\n# Set our main window, to the Main Window\nq.set_main_window(window['main'])\n\n```\n\n### Example 2: Accessing a tkinter object\n```python\nfrom QuykGui import qgui\n\n# Initialize QuykGui\nq = qgui()\n\n# Create a main window\nwindow = {\n    'main': q.new_window('Main Window'),\n}\n\n# Option 1 - storing to local variable\ntext_element = window['main'].new_text('this is some text on the interface.')\ntkinter_obj = text_element.object\n\n# Option 2 - finding by Id\nwindow['main'].new_text('this is some text on the interface.', id='text_element')\ntkinter_obj = window['main'].get_by_id('text_element').object\n\n# Set our main window, to the Main Window\nq.set_main_window(window['main'])\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmwd1993%2Fquykgui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmwd1993%2Fquykgui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmwd1993%2Fquykgui/lists"}