{"id":23787567,"url":"https://github.com/paulledemon/pyuibuilder","last_synced_at":"2025-05-16T06:07:15.215Z","repository":{"id":270565045,"uuid":"837825864","full_name":"PaulleDemon/PyUIBuilder","owner":"PaulleDemon","description":"Python GUI builder. GUI builder for Tkinter, CustomTkinter, Kivy and PySide (upcoming)","archived":false,"fork":false,"pushed_at":"2025-05-07T09:58:57.000Z","size":30687,"stargazers_count":659,"open_issues_count":2,"forks_count":43,"subscribers_count":11,"default_branch":"main","last_synced_at":"2025-05-16T06:07:06.098Z","etag":null,"topics":["customtkinter","gui","gui-builder","kivy-framework","pyqt","pyside","python","python-gui-builder","pythongui","tkinter","uibuilder"],"latest_commit_sha":null,"homepage":"https://pyuibuilder.com/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PaulleDemon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/funding.yaml","license":"License.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":"roadmap.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"ko_fi":"artpaul","github":["PaulleDemon"],"buy_me_a_coffee":"artpaul"}},"created_at":"2024-08-04T06:32:44.000Z","updated_at":"2025-05-15T17:42:24.000Z","dependencies_parsed_at":"2025-05-07T10:54:51.373Z","dependency_job_id":null,"html_url":"https://github.com/PaulleDemon/PyUIBuilder","commit_stats":null,"previous_names":["paulledemon/pyuibuilder"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaulleDemon%2FPyUIBuilder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaulleDemon%2FPyUIBuilder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaulleDemon%2FPyUIBuilder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaulleDemon%2FPyUIBuilder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PaulleDemon","download_url":"https://codeload.github.com/PaulleDemon/PyUIBuilder/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254478190,"owners_count":22077676,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["customtkinter","gui","gui-builder","kivy-framework","pyqt","pyside","python","python-gui-builder","pythongui","tkinter","uibuilder"],"created_at":"2025-01-01T15:13:59.028Z","updated_at":"2025-05-16T06:07:10.187Z","avatar_url":"https://github.com/PaulleDemon.png","language":"JavaScript","readme":"# PyUIBuilder - Python GUI Builder\nBuild python GUIs like Webflow\n\n\u003csub\u003eNot affiliated to Webflow\u003c/sub\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://twitter.com/share?url=https://github.com/PaulleDemon/PyUIBuilder\u0026text=Check out PyUIBuilder tool\"\u003e\n        \u003cimg src=\"./repo-assets/share/1.png\" height=\"35\" /\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://www.reddit.com/submit?url=https://github.com/PaulleDemon/PyUIBuilder\u0026title=Check out PyUIBuilder tool\"\u003e\n        \u003cimg src=\"./repo-assets/share/4.png\" height=\"35\" /\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://www.linkedin.com/shareArticle?mini=true\u0026url=https://github.com/PaulleDemon/PyUIBuilder\u0026title=check out PyUIBuilder tool\"\u003e\n        \u003cimg src=\"./repo-assets/share/2.png\" height=\"35\" /\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://youtube.com/\"\u003e\n        \u003cimg src=\"./repo-assets/share/3.png\" height=\"35\" /\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp\u003e\u003cimg src=\"./repo-assets/logo/PyUi.png\" alt=\"font tester logo\" width=\"100\" height=\"100\"\u003e\u003c/p\u003e\n\n\nBuild Python GUI's with ease of Drag and drop builders.\n\n\n\nhttps://github.com/user-attachments/assets/ac91aa98-843d-4578-b646-88e66bc113de\n\n\u003csub\u003e**Don't like background music? feel free to mute it**\u003c/sub\u003e\n\n## Try PyUIBuilder\nTry [PyUIBuilder](https://pyuibuilder.com)\n\n## Table of contents\n\n- [Docs - Getting started](#docs---getting-started)\n- [Features](#features)\n- [Supported Frameworks/Libraries](#supported-frameworkslibraries)\n- [Roadmap](#roadmap)\n- [License - Fund the development](#license---fund-the-development)\n- [Newsletter](#newsletter)\n    - [Keep yourself updated](#keep-yourself-updated)\n- [Tested on](#tested-on)\n- [FAQ](#faq)\n- [License Information](#license-information)\n    - [Web based Editor](#webbased-editor)\n    - [Electron App - Hobbyist License](#electron-app---hobbyist-license)\n    - [Electron App - Commercial License](#electron-app---commercial-license)\n- [Contributing](#contributing)\n- [Some of my other open-source](#some-of-my-other-open-source)\n- [Author](#author)\n\n\n## Resources\n1. Youtube - [PyUibuilder playlist](https://youtube.com/playlist?list=PL0VamwghCfX-KXtGKGLak-C_-Jcx_eOiK\u0026si=vnVr8vdU_JkIEL2f)\n2. [Creating sign up form Blog](https://medium.com/python-in-plain-english/create-tkinter-guis-using-tkinter-gui-builder-pyuibuilder-a7422489c55e)\n3. [Discord Invite](https://discord.gg/dHXjrrCA7G)\n\n## Docs - Getting started\nRead the docs on the [Docs page](https://docs.pyuibuilder.com/)\n\n## Example app\n\n\u003cimg src=\"./demos/sample.png\" alt=\"demo\" width=\"600\"\u003e\n\n**Output code generated for tkinter**\n```py\n# This code is generated by PyUIbuilder: https://github.com/PaulleDemon/PyUIBuilder\n\nimport tkinter as tk\nfrom tktimepicker import AnalogPicker, AnalogThemes, constants\nimport tkintermapview\n\nmain = tk.Tk()\nmain.config(bg=\"#332f2f\")\nmain.title(\"Main Window\")\n\ntimepicker = AnalogPicker(parent=main, type=constants.HOURS12)\ntimepicker_theme = AnalogThemes(timepicker)\ntimepicker_theme.setNavyBlue()\ntimepicker.place(x=80, y=145, width=250, height=350)\n\nmap_viewer = tkintermapview.TkinterMapView(master=main)\nmap_viewer.place(x=423, y=181, width=400, height=250)\n\nlabel = tk.Label(master=main, text=\"Sample text\")\nlabel.config(bg=\"#E4E2E2\", fg=\"#000\")\nlabel.place(x=83, y=69, width=130, height=46)\n\nbutton = tk.Button(master=main, text=\"Click me\")\nbutton.config(bg=\"#65ff4a\", fg=\"#0b0909\")\nbutton.place(x=457, y=108, width=80, height=40)\n\n\nmain.mainloop() \n```\n**Output produced tkinter (linux)**\n\n\u003cimg src=\"./demos/demo-output.png\" alt=\"demo\" width=\"600\"\u003e\n\nTkinter is OS dependent, output may vary based on OS.\n\n## 3 Easy steps.\n1. Select a UI library/framework.\n2. Drag and drop widgets.\n3. Generate and download the code.\n\n\n## Features\n\nWhile there are a lot of features, here are few you need to know.\n\n* Framework agnostic - Can outputs code in multiple frameworks.\n* Pre-built UI widgets\n* Plugins to extend 3rd party UI libraries\n* Supports layout managers, such as flex, grid and absolute positioning [read docs](https://docs.pyuibuilder.com/)\n* Generates python Code.\n* Support to upload local assets.\n* Generates requirements.txt file when needed\n\n## Supported Frameworks/Libraries\n\n- [x] Tkinter \n- [x] CustomTkinter \n- [ ] Kivy (work in progress)\n- [ ] PySide (work in progress)\n\n## Roadmap\nHere are some of the upcoming features.\n* Support for Event Handlers\n* Kivy Framework support\n* Pyqt/PySide Support\n* **Downloadable Electron app** and more.\n\nTo learn more/ see upcoming features visit [roadmap](./roadmap.md)\n \nTo stay in loop, subscribe to the free [newsletter](https://tally.so/r/mVDY7N)\n\n## License - Fund the development\n\nHelp fund development of this and upcoming projects by purchasing a one-time license.\n\nPurchasing License will give you discounted price and provide you access to more advance features, early access and more.\n\nThe discount's will be available for limited time only on pre-orders.\n\n| Type                                                              | Free              | Premium - Hobbyist / Per user                            | Premium - Commercial / Per user                            |\n|-------------------------------------------------------------------|-------------------|----------------------------------------------------------|------------------------------------------------------------|\n| **Support open-source development**                               | 👍️                 | 😎                                                        | 🚀                                                          |\n| **Priority support** - (prioritize your feature requests, issues) | community support | ✅                                                        | ✅                                                          |\n| **Lifetime license** (one-time  purchase)                         | 👍️                 | ✅                                                        | ✅                                                          |\n| **Early access** to upcoming features                             | ❌                 | ✅                                                        | ✅                                                          |\n| **Downloadable Electron App** (upcoming)                          | ❌                 | ✅                                                        | ✅                                                          |\n| **Premium widgets**(tabbed widget, scroll widget etc) (upcoming)                          | ❌                 | ✅                                                        | ✅                                                          |\n| **Run Preview live**(upcoming)                                    | ❌                 | ✅                                                        | ✅                                                          |\n| **Save and Load UI files** (upcoming)                             | ❌                 | ✅                                                        | ✅                                                          |\n| **Load 3rd party plugins locally**                                | ❌                 | ✅                                                        | ✅                                                          |\n| **Dark theme** (upcoming)                                         | ❌                 | ✅                                                        | ✅                                                          |\n| **Commercial Use**                                                | ✅                 | ❌                                                        | ✅                                                          |\n| **Support for PyQt/PySide frameworks** (upcoming)                 | ❌                 | ❌                                                        | ✅                                                          |\n| **More upcoming features and support**                            | ❓️                 | ✅                                                        | ✅                                                          |\n| **Price**                                                         | -                 | ~~$129~~ **$29** (save 77.52% for limited time on pre-order) | ~~180~~ **$49** (Save 72.78% for a limited time on pre-orders) |\n| Pre-order now!                                                    |                   | [Get license](https://ko-fi.com/s/4a3dffb3b9)                                          | [Get license](https://ko-fi.com/s/560a3b6b05)                                            |\n\n## Newsletter\n\nJoin the free newsletter to know about upcoming updates, learn how I built this tool and more about open-source.\n\n[Join free newsletter](https://paulfreeman.substack.com/subscribe?utm_source=Github-Pybuilder)\n\n#### Keep yourself updated\n\nTo keep up with the latest developments considering starting ⭐️ this repo\n\n## Tested on\n\nDepending on whether your Browser supports native HTML drag and drop, it may work differently.\nI haven't tested on Safari, since I don't have a Macbook, feel free to let me know if it works.\n\n- [x] Chrome\n- [x] Edge\n- [x] FireFox\n- [ ] Safari (Not tested on safari)\n\n## FAQ\n\n\n1. **Why do I need a GUI builder?**\n    \n    **A.** GUI builders assist you quickly create GUI without learning too much about GUI frameworks. It can also help you quickly prototype and see things visually. \n\n2. **Do I need to purchase a license to use this?**\n\n   **A.** Webbased editor will remain free to use. To support open-source development, If you want a downloadable exe for local development and additional features, you'll need to purchase license based on your needs (hobbiest / commercial)\n\n3. **How does this compare to other UI builders?**\n\n   **A.** \n   * Most GUI builders out there are framework specific, this UI Builder tool is framework independent.\n\n   * This outputs code in Python, not in XML or other formats which can be hard to debug. So its easier to modify even after downloading the code.\n\n   * Support for 3rd party UI libraries. Many GUI builders don't come with support for 3rd party libraries. \n\n4. **Why doesn't the theme of the GUI builder match the theme of Tkinter?**\n   \n   **A.** Tkinter is a OS-dependent library, so it would render differently on different OS. Having a common UI the the GUI builder makes it simpler for development. \n   \n   If you want a live preview before generating the code you can get a premium license and you'll be notified when that feature releases.\n\n## License Information\n\nTo support development of this project, license differ depending on the usecase.\n\n#### Web-based Editor\n* All code generated by the builder tools  are licensed under MIT and can be used commercially\n\n#### Electron App - Hobbyist License\nThis is meant for students and hobbyist\n* All code generated by the builder tools are free to use for non-commercial purposes. If you are using \n  this for a startup or your business you'll need to get a business license.\n\n#### Electron App - Commercial License\nThis is meant for business usecases, you can use the code even for commercial use.\n* All code generated by the builder tools are free to use for commercial and non-commercial purposes. If you are using this for a startup or your business you'll need to get a commercial license.\n\n## Contributing\nTo run it locally you'll need to add .env-cmdrc.json with the following in it. This file should be in the root directory\n\n```json\n{\n    \"development\":{\n        \"REACT_APP_ANALYTICS_SCRIPT_ID\": \"\"\n    },\n\n    \"production\":{\n        \"REACT_APP_ANALYTICS_SCRIPT_ID\": \"\"\n\n    }\n}\n```\n\nFor contributing read [here](./CONTRIBUTING.md)\n\n\n## Some of my other open-source\n\n* [Awesome Landing pages](https://github.com/PaulleDemon/awesome-landing-pages)\n* [Hover Preview](https://github.com/PaulleDemon/Hover-Preview)\n* [Font Tester](https://github.com/PaulleDemon/font-tester-chrome)\n* [Django SaaS Boilerplate](https://github.com/PaulleDemon/Django-SAAS-Boilerplate)\n\n\n## Author\n* Paul\n* Github: PaulleDemon\n","funding_links":["https://ko-fi.com/artpaul","https://github.com/sponsors/PaulleDemon","https://buymeacoffee.com/artpaul","https://ko-fi.com/s/4a3dffb3b9","https://ko-fi.com/s/560a3b6b05"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaulledemon%2Fpyuibuilder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpaulledemon%2Fpyuibuilder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaulledemon%2Fpyuibuilder/lists"}