Interface with SmartWorks via Streamlit Applications

Streamlit is a web app framework written in Python and can be utilized for dashboarding and more. In this tutorial, two apps will be used. The user input app will create a Thing and allow you to fill out data for qualitative Properties of the newly created Thing such as: name, age, and ride type. The dashboard app will visualize data that is being collected in SmartWorks and can be shared with others. The apps will interface with SmartWorks through HTTP connections.

Refer to Streamlit Documentation for additional resources and on how to get started.

Before starting, please download the user input and dashboard Python template files.


In this tutorial, a User Input app will be used to create a new Thing every time a user starts a ride and fills out their information. Once, the Thing is created, you need to start up the microcontroller unit and all sensors to begin sending data to the Thing. Once the data stream is active, use a secondary Dashboard app to visualize the data that is being sent. You can also utilize Panopticon for further data analysis and visualization. The next three sections will explain how to achieve these goals in more detail.