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!