Skip to content

The webflow for Python GUI. GUI builder for Tkinter, CustomTkinter, Kivy and PySide (upcoming)

License

Notifications You must be signed in to change notification settings

PaulleDemon/PyUIBuilder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

PyUIBuilder - Build python GUIs like Webflow

Not affiliated to Webflow

font tester logo

Build Python GUI's with ease of Drag and drop builders.

pyuibuilder.mp4

Don't like background music? fell free to mute it

Try PyUIBuilder

Try PyUIBuilder

Table of contents

Docs - Getting started

Read the docs on the Docs page

Example app

demo

Output code generated for tkinter

# This code is generated by PyUIbuilder: https://github.com/PaulleDemon/PyUIBuilder

import tkinter as tk
from tktimepicker import AnalogPicker, AnalogThemes, constants
import tkintermapview

main = tk.Tk()
main.config(bg="#332f2f")
main.title("Main Window")

timepicker = AnalogPicker(parent=main, type=constants.HOURS12)
timepicker_theme = AnalogThemes(timepicker)
timepicker_theme.setNavyBlue()
timepicker.place(x=80, y=145, width=250, height=350)

map_viewer = tkintermapview.TkinterMapView(master=main)
map_viewer.place(x=423, y=181, width=400, height=250)

label = tk.Label(master=main, text="Sample text")
label.config(bg="#E4E2E2", fg="#000")
label.place(x=83, y=69, width=130, height=46)

button = tk.Button(master=main, text="Click me")
button.config(bg="#65ff4a", fg="#0b0909")
button.place(x=457, y=108, width=80, height=40)


main.mainloop() 

Output produced tkinter (linux)

demo

Tkinter is OS dependent, output may vary based on OS.

3 Easy steps.

  1. Select a UI library/framework.
  2. Drag and drop widgets.
  3. Generate and download the code.

Features

While there are a lot of features, here are few you need to know.

  • Framework agnostic - Can outputs code in multiple frameworks.
  • Pre-built UI widgets
  • Plugins to extend 3rd party UI libraries
  • Supports layout managers, such as flex, grid and absolute positioning read docs
  • Generates python Code.
  • Support to upload local assets.
  • Generates requirements.txt file when needed

Supported Frameworks/Libraries

  • Tkinter
  • CustomTkinter
  • Kivy (work in progress)
  • PySide (work in progress)

Roadmap

Here are some of the upcoming features.

  • Treeview on the sidebar
  • Support for Event Handlers
  • Kivy Framework support
  • Pyqt/PySide Support
  • Downloadable Electron app and more.

To learn more/ see upcoming features visit roadmap

To stay in loop, subscribe to the free newsletter

License - Fund the development

Help fund open-source work and development of this and upcoming projects by purchasing a one-time license.

Purchasing License will allow me to focus on development of this tool and provide you access to more advance features, early access and more.

The discount's will be available for limited time only on pre-orders.

Type Free Premium - Hobbyist / Per user Premium - Commercial / Per user
Support open-source development πŸ‘οΈ 😎 πŸš€
Priority support - (prioritize your feature requests, issues) community support βœ… βœ…
Lifetime license (one-time purchase) πŸ‘οΈ βœ… βœ…
Early access to upcoming features ❌ βœ… βœ…
Downloadable Electron App (upcoming) ❌ βœ… βœ…
Run Preview live(upcoming) ❌ βœ… βœ…
Save and Load UI files (upcoming) ❌ βœ… βœ…
Load 3rd party plugins locally ❌ βœ… βœ…
Dark theme (upcoming) ❌ βœ… βœ…
Commercial Use βœ… ❌ βœ…
Support for PyQt/PySide frameworks (upcoming) ❌ ❌ βœ…
More upcoming features and support ❓️ βœ… βœ…
Price - $129 $29 (save 77.52% for limited time on pre-order) 180 $49 (Save 72.78% for a limited time on pre-orders)
Pre-order now! Get license Get license

Newsletter

Join the free newsletter to know about upcoming updates, learn how I built this tool and more about open-source.

Join free newsletter

Keep yourself updated

To keep up with the latest developments considering starting ⭐️ this repo

Tested on

Depending on whether your Browser supports native HTML drag and drop, it may work differently. I haven't tested on Safari, since I don't have a Macbook, feel free to let me know if it works.

  • Chrome
  • Edge
  • FireFox
  • Safari (Not tested on safari)

FAQ

  1. Why do I need a GUI builder?

    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.

  2. Do I need to purchase a license to use this?

    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)

  3. How does this compare to other UI builders?

    A.

    • Most GUI builders out there are framework specific, this UI Builder tool is framework independent.

    • 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.

    • Support for 3rd party UI libraries. Many GUI builders don't come with support for 3rd party libraries.

  4. Why doesn't the theme of the GUI builder match the theme of Tkinter?

    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.

    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.

License Information

To support development of this project, license differ depending on the usecase.

Web-based Editor

  • All code generated by the builder tools are licensed under MIT and can be used commercially

Electron App - Hobbyist License

This is meant for students and hobbyist

  • All code generated by the builder tools are free to use for non-commercial purposes. If you are using this for a startup or your business you'll need to get a business license.

Electron App - Commercial License

This is meant for business usecases, you can use the code even for commercial use.

  • 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.

Some of my other open-source

Author

  • Paul
  • Github: PaulleDemon