NiceGUI 1.2 – Bringing Electron-like Capabilities to Python with pywebview
We are thrilled to introduce NiceGUI 1.2, a major update to our open-source Python library (https://nicegui.io). With an emphasis on simplicity and ease of use, NiceGUI empowers Python developers to create user-friendly graphical web-based interfaces while focusing on their Python code. The library has been well-received, boasting 3000+ stars on GitHub and a growing community.
Lately we've introduced the "native" mode, which paves the way for Electron-like capabilities. By using "ui.run(native=True)", you can now create a native desktop window using pywebview, offering desktop-feeling on Windows, Mac, and Linux.
Check out the video demo: https://youtu.be/xmWG2SP9WAI
Technical details:
NiceGUI uses FastAPI in the backend and Vue3/Quasar in the frontend
Each user interaction is sent via WebSocket to the backend, processed in Python; similarly, UI descriptions are created as JSON objects in the backend and sent via WebSocket to the client
While there are still many features missing for a full Electron alternative, with the great community, we will flesh this out in the future
The whole backend-first approach from NiceGUI relies on a fast internet connection and therefore is not meant to replace classical web apps; its main purpose is a quick way to build user interfaces for your Python code
We know the Hacker News community values technical details, and we invite you to dive into the GitHub repository (https://github.com/zauberzeug/nicegui/) to explore the code and contribute. We're eager to receive constructive feedback and improve the library based on your insights.
Join our Discord server (https://discord.gg/TEpFeAaF4f) and subreddit (r/NiceGUI) for discussions, support, and sharing projects.
We appreciate your support and look forward to seeing NiceGUI's potential unfold with your help. Together, let's make NiceGUI the Electron of Python! This looks super polished for what its worth. I am def gonna give it a try. Thanks for making this.