Eel
Gooey
Eel | Gooey | |
---|---|---|
47 | 60 | |
6,184 | 20,377 | |
0.9% | - | |
0.0 | 0.0 | |
4 days ago | 2 months ago | |
Python | Python | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Eel
-
Augmenting the Markdown Language for Great Python Graphical Interfaces
I gave up a long time ago attempting to write GUIs in pure python. I've come back to them periodically to see if the landscape has changed, but I'm always disappointed.
My current go-to python GUI solution is to use the Eel library. It renders GUIs in a web-browser like window with HTMl/CSS/JS.It lets you expose your python functions to JavaScript, so data can be easily transferred back and forth between the python and the JavaScript. And since it's just web-dev, it's pretty easy to make things look and feel good enough. Any other web-dev libraries like bootstrap and jquery can be used. It works pretty well for writing GUIs that put data analysis tools in front of my colleagues.
https://github.com/python-eel/Eel
- Ask HN: Cool Useful GitHub Repos?
- Working with GUI
-
YouTube Downloader
Eel was used to implement the app and communication with the web interface.
-
Need to access the variable from an asynchronous function
I am calling a function from Python using eel and taking the return value. Python functions are asynchronous with JavaScript by nature. This code is combined with other variables to determine if the form can continue. allFilled() is called everytime the form field changes.
-
TIL: Eel is amazing for making quick and visually rich UIs!
In the past, I've used QT4 and QT Designer. It was okay. It was a small mountain to climb for myself then - but certainly doable. However, there was a lot of generated code that wasn't the most concise thing. Today, I discovered Eel. Since I used QT4 in the past, I've done some web dev. Certainly, not proficient there. But Eel wasn't as big of a hurdle. In fact, it took me a fraction of the time because it is much like creating a basic website. Where there's an abundance of tutorials and tips out there for everything imaginable. Instead of downloading and adding a font, clicking through a bunch of dialogs. I just linked a Google font and updated the CSS. Stuff like that.
-
Could someone suggest a development environment and/or tools I could use? I'm looking for an environment similar to a browser. I plan on using Python to display the results of many calculations that would change, maybe every second or half second. With lots of variables involved. More details below.
If you don't want a web-app, you can still use JS for GUI, using something like python-eel https://github.com/python-eel/Eel
- HELP! Python project requires a GUI.
- Does my project need Flask?
- How does one make their own GUI from scratch? (no GUI libraries)
Gooey
-
Gooey: My take on a Rusty GUI framework
The name conflicts with a similar python module that allows one to turn any Python console program into a GUI with one line.
https://github.com/chriskiehl/Gooey
- FLaNK Stack Weekly 11 Dec 2023
- Turn (almost) any Python command line program into a full GUI application with one line
-
Gooey: Turn almost any Python command line program into a full GUI application
Hey! Cool project! I have a question: why do you dump out sys.argv to a local file in the CWD? [0] tmp.txt is hardly a unique name… or am I missing something and this never triggers?
[0] https://github.com/chriskiehl/Gooey/blob/be4b11b8f27f500e732...
-
PysimpleGUI
This might be of interest to you:
> Gooey - Turn (almost) any Python 3 Console Program into a GUI application with one line
https://github.com/chriskiehl/Gooey
-
Python GUIs
I love gooey: https://github.com/chriskiehl/Gooey
It allows me to quickly slap a GUI on an existing script that accepts command-line-arguments. In the end, I get the best of both world: Discoverability from the GUI, automation through the script, and automatic feature parity between the two.
Downside: Control over the GUI layout is basic, and only "standard" GUI features work, but I never felt limited when using it.
-
Launch HN: Onu (YC W23) – Turn scripts into internal tools in minutes
similar for local/individual usage:
https://github.com/chriskiehl/Gooey - take a python-CLI, make a TK-windows
and then probably even simple dashboarding like streamlit.
-
This package will "GUI-fy" your functions!
Like Gooey?
-
Question about 'chaining' Python scripts
As for how I'd handle it, I would probably combine both into one command-line program, with all filepaths using pathlib and letting argparse handle the options. That way you could optionally generate a GUI with gooey with little extra effort, although this would also add a dependency.
What are some alternatives?
Electron - :electron: Build cross-platform desktop apps with JavaScript, HTML, and CSS
Python Fire - Python Fire is a library for automatically generating command line interfaces (CLIs) from absolutely any Python object.
cefpython - Python bindings for the Chromium Embedded Framework (CEF)
Tkinter-Designer - An easy and fast way to create a Python GUI 🐍
pywebview - Build GUI for your Python program with JavaScript, HTML, and CSS
click - Python composable command line interface toolkit
Neutron - Create modern cross-platform apps in Python using HTML and CSS
typer - Typer, build great CLIs. Easy to code. Based on Python type hints.
streamlit - Streamlit — A faster way to build and share data apps.
asciimatics - A cross platform package to do curses-like operations, plus higher level APIs and widgets to create text UIs and ASCII art animations
PyOxidizer - A modern Python application packaging and distribution tool
PySimpleGUI - Python GUIs for Humans! PySimpleGUI is the top-rated Python application development environment. Launched in 2018 and actively developed, maintained, and supported in 2024. Transforms tkinter, Qt, WxPython, and Remi into a simple, intuitive, and fun experience for both hobbyists and expert users.