Eel
Electron
Our great sponsors
Eel | Electron | |
---|---|---|
47 | 236 | |
6,145 | 111,866 | |
1.1% | 1.0% | |
0.0 | 9.8 | |
12 days ago | about 3 hours ago | |
Python | C++ | |
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.
- 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)
Electron
-
Release Radar • February 2024 Edition
The team at Electron have been faithfully shipping new releases almost every single month. I think they had Christmas off 🤔. This popular framework has developers writing cross-platform desktop applications using JavaScript, HTML and CSS. The latest update depreciates some process events, and added new modules, APIs, methods, and more. Read into all the changes in the Electron release notes. This month, Electron also introduced a new formal RFC process.
-
The IDEs we had 30 years ago and we lost
VS Code has been crashing at launch in Wayland since more than eight months ago:
-
Design Systems with Web Components
So we talked a lot about the Atomic Design Principle, but you could just use that in any system and start creating. You could have Angular components, React Components, and Vue Components. But if you notice these don't easily work Everwhere. So the solution is to use Web Components because the modern browser can already understand these, and any Front-End framework can then utilize these components. You can use Electron for desktop (Slack, VSCode), PWA for both Android and iOS, and across all browsers Can I Use.
- Settings · Rulesets · electron/electron
-
How I got Wayland, Vulkan, and hardware acceleration working with Figma on Fedora 39.
I'm noticing a significant boost in performance, crisper text, and better power savings. The only shortcoming is that the window which Figma will run on will lose its shadow. This is due to a technical limitation with frameless windows on Linux.
-
Building Apps with Tauri and Elixir
For the longest time, building desktop apps was a daunting task to web developers. That is, until technologies like Electron made creating these apps more approachable to a wider audience. Today, we’ve got a wide array of native applications built with solutions like Electron, Tauri, Capacitor, and many more. While these are great solutions, sometimes configuration can be tricky and the applications we create can become somewhat bloated in terms of memory usage.
-
MS Teams & Electron libwebp 0-Day Vulnerability
Electron patch for version 27: https://github.com/electron/electron/pull/39823
-
CVE-2023-4863: Heap buffer overflow in WebP (Chrome)
It does, see [0]. Fun fact: Signal desktop, which uses Electron under the hood, is running without sandbox on Linux [1][2].
[0] https://github.com/electron/electron/pull/39824
-
Capturing at Speed of Thought
Turns out, there is an issue with the electron window not returning focus correctly on mac - https://github.com/electron/electron/issues/5495. The trick to solving is to treat quick capture as a screensaver. When closing, you hide it by setting the opacity to 0 and sending hide: command to the first responder.
-
$Home, Not So Sweet $Home
Open since 2016! https://github.com/electron/electron/issues/8124
What are some alternatives?
cefpython - Python bindings for the Chromium Embedded Framework (CEF)
tauri - Build smaller, faster, and more secure desktop applications with a web frontend.
pywebview - Build GUI for your Python program with JavaScript, HTML, and CSS
dotenv - Loads environment variables from .env for nodejs projects.
Neutron - Create modern cross-platform apps in Python using HTML and CSS
puppeteer - Node.js API for Chrome
streamlit - Streamlit — A faster way to build and share data apps.
react-native - A framework for building native applications using React
PyOxidizer - A modern Python application packaging and distribution tool
cheerio - The fast, flexible, and elegant library for parsing and manipulating HTML and XML.
qtpy - Provides an uniform layer to support PyQt5, PySide2, PyQt6, PySide6 with a single codebase
jsdom - A JavaScript implementation of various web standards, for use with Node.js