NiceGUI is a framework for building graphical user interfaces that run in a web browser or a native desktop window. It provides a convenient way to create interactive applications without requiring developers to write substantial amounts of frontend code.
The framework is particularly suited to dashboards, robotics interfaces, smart home applications, data visualization, and machine learning tools. Applications can combine conventional interface controls with interactive charts, three-dimensional scenes, and real-time information.
NiceGUI handles communication between the application and its interface, allowing developers to concentrate on application functionality rather than managing browser interactions.
This is free and open source software.
Key Features
- Extensive collection of interface components including buttons, sliders, switches, checkboxes, text fields, and dialogs.
- Flexible layouts with rows, columns, cards, tabs, and expandable sections.
- Interactive charts and plots using libraries including ECharts, Plotly, and Matplotlib.
- Three-dimensional scene rendering and interactive visualization.
- Interactive tables, file uploads, image annotations, and tree views.
- Support for Markdown, HTML, and custom Vue components.
- Automatic interface updates through data binding and refreshable functions.
- Built-in timers for periodically updating displayed information.
- Event handling for keyboard, mouse, and touch interactions.
- Support for shared application state and individual user sessions.
- Persistent storage for application, user, and browser data.
- Native desktop mode using pywebview.
- Automatic page reloading when application code changes.
- Customizable themes, colors, and interface appearance.
- Integration with FastAPI for extending application functionality.
- Built-in testing utilities for simulating user interactions.
- Cross-platform support – runs on Linux, macOS, and Windows.
Website: github.com/zauberzeug/nicegui
Support:
Developer: Zauberzeug and contributors
License: MIT License
NiceGUI is written in Python. Learn Python with our recommended free books and free tutorials.
Related Software
| Python Frameworks | |
|---|---|
| Django | High-level web application framework |
| Dash | Build analytical web applications without JavaScript |
| Tornado | Framework, scalable web server, and asynchronous networking library |
| TurboGears | Framework based on the ObjectDispatch paradigm |
| Masonite | Dev tool with all the features needed for rapid development |
| Robyn | Python web framework designed for high performance |
| Reflex | Library to build full-stack web apps in pure Python |
| Frappe | Low-code, metadata-driven web application framework |
| Zope | Object-oriented web application server |
| Emmett | Full-stack Python web framework |
| PY4WEB | Successor to web2py |
| CubicWeb | Semantic web framework |
| Reahl | Python-only web framework |
| django-hotsauce | Rapid web application development and testing |
| Jam.py | Web front-end application generator |
| Grok | Web framework based on Zope Toolkit technology |
| web2py | Full-featured, full-stack framework for rapid development |
Read our verdict in the software roundup.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.