Framework

NiceGUI – Python framework for graphical user interfaces

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
DjangoHigh-level web application framework
DashBuild analytical web applications without JavaScript
TornadoFramework, scalable web server, and asynchronous networking library
TurboGearsFramework based on the ObjectDispatch paradigm
MasoniteDev tool with all the features needed for rapid development
RobynPython web framework designed for high performance
ReflexLibrary to build full-stack web apps in pure Python
FrappeLow-code, metadata-driven web application framework
ZopeObject-oriented web application server
EmmettFull-stack Python web framework
PY4WEBSuccessor to web2py
CubicWebSemantic web framework
ReahlPython-only web framework
django-hotsauceRapid web application development and testing
Jam.pyWeb front-end application generator
GrokWeb framework based on Zope Toolkit technology
web2pyFull-featured, full-stack framework for rapid development

Read our verdict in the software roundup.


Best Free and Open Source Software 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.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted