A list of libraries to build quick Web UI with python
Gradio
Gradio is the fastest way to demo your machine learning model with a friendly web interface so that anyone can use it, anywhere.
Machine Learning Oriented, Hugging Face integration
Fastapi
import gradio as gr
def greet(name):
return "Hello " + name + "!"
demo = gr.Interface(fn=greet, inputs="text", outputs="text")
demo.launch()
Gradio Playground https://www.gradio.app/playground
Hosting Hugging Face Spaces or self hosted
Hyperdiv
Open-source framework for rapidly building reactive web UIs in Python, with built-in Shoelace components, Markdown, charts, tables, and more.
pip install hyperdiv
hyperdiv docs
deploy to https://replit.com https://railway.app https://fly.io
Streamlit
Streamlit is an open-source Python library that provides development components to create and share beautiful and easy to use custom web applications for machine learning and data science. Streamlit is a data app framework that can also be used as a data dashboarding tool. Using just a few lines of code, one can build and deploy powerful data apps in a matter of a few minutes.
Plotly Dash
Dash
Plotly Dash User Guide & Documentation
Evidence
Business intelligence as code: build fast, interactive data visualizations in pure SQL and markdown - evidence-dev/evidence
Perspective
PySimpleGUI
PySimpleGUI creates graphical user interfaces (GUIs) using Python, quickly and easily!
-
Make sure Python is installed.
-
Install PySimpleGUI: python3 -m pip install pysimplegui
-
Download main.py, which contains:
import PySimpleGUI as sg
# All the stuff inside your window.
layout = [ [sg.Text("What's your name?")],
[sg.InputText()],
[sg.Button('Ok'), sg.Button('Cancel')] ]
# Create the Window
window = sg.Window('Hello Example', layout)
# Event Loop to process "events" and get the "values" of the inputs
while True:
event, values = window.read()
# if user closes window or clicks cancel
if event == sg.WIN_CLOSED or event == 'Cancel':
break
print('Hello', values[0], '!')
window.close()
- Run:
pyhon3 main.py
Reflex
πΈοΈ Web apps in pure Python π. Contribute to reflex-dev/reflex development by creating an account on GitHub.
Other frameworks:
No-code in the front, Python in the back. An open-source framework for creating data apps. - streamsync-cloud/streamsync
Streamsync is an open-source framework for creating data apps. Build user interfaces using a visual editor; write the backend code in Python.
GUI
Kivy
Open source UI framework written in Python, running on Windows, Linux, macOS, Android and iOS - kivy/kivy
Open source UI framework written in Python, running on Windows, Linux, macOS, Android and iOS
Data Oriented / Dashboards
Panel
Voila / Voici
Bokeh
![Preview Image](http://static.bokeh.org/og/logotype-on-hex.png)
Bokeh is a Python library for creating interactive visualizations for modern web browsers. It helps you build beautiful graphics, ranging from simple plots to complex dashboards with streaming data...
Binder
![Preview Image](https://mybinder.org/static/images/logo_social.png)
Reproducible, sharable, open, interactive computing environments.
Deployment
Ploomber: Ship AI applications
![Preview Image](https://streamlit.io/sharing-image-facebook.jpg)
Streamlit is an open-source Python framework for machine learning and data science teams. Create interactive data apps in minutes.
Observable
Quatro
![Preview Image](https://quarto.org/quarto-dark-bg.jpeg)
An open source technical publishing system for creating beautiful articles, websites, blogs, books, slides, and more. Supports Python, R, Julia, and JavaScript.
PyGWalker
PyGWalker: Turn your pandas dataframe into an interactive UI for visual analysis - Kanaries/pygwalker