Create Interactive Web Applications in Pure Python with PyWebIO

Web Applications without HTML & JS

Spatial Data Science
4 min readMay 18, 2021


Exciting time to witness!

Creating Web applications in Python is way easier than it used just a few years ago. We had Streamlit that revolutionized the way we create and deploy apps in Python.

Meet PyWebIO now.

It is easy to build simple web applications using PywebIO without HTML and Javascript in Python. The concept of this package is simple: you get input and output functions that you can create simple GUI or web applications.

Then you can serve the web applications in your browser locally or on the cloud from your terminal, interactive execution environments like Python shell, IPython, or Jupyter notebook.

To install PyWebIO, run the following command.

pip install -U pywebio

Input & Output

PyWebIO is intuitive and straightforward. If you think of it as an extension to your scripts, terminal or interactive environment that enables you to create web applications, it would be fitting.

Let me show a simple example running in a python environment. Here we create different types of inputs, including text input, radio button, and checkbox.

The following GIF shows how you get a browser GUI for your code immediately when you run the python code.

Isn’t that cool!

There are several input functions available in Pywebio; you can find the list of input functions available here.

Input functions list.



Spatial Data Science

Writing about Geospatial Data Science, AI, ML, DL, Python, SQL, GIS | Top writer | 1m views.