Book Image

Web App Development Made Simple with Streamlit

By : Rosario Moscato
Book Image

Web App Development Made Simple with Streamlit

By: Rosario Moscato

Overview of this book

This book is a comprehensive guide to the Streamlit open-source Python library and simplifying the process of creating web applications. Through hands-on guidance and realistic examples, you’ll progress from crafting simple to sophisticated web applications from scratch. This book covers everything from understanding Streamlit's central principles, modules, basic features, and widgets to advanced skills such as dealing with databases, hashes, sessions, and multipages. Starting with fundamental concepts like operation systems virtualization, IDEs, development environments, widgets, scripting, and the anatomy of web apps, the initial chapters set the groundwork. You’ll then apply this knowledge to develop some real web apps, gradually advancing to more complex apps, incorporating features like natural language processing (NLP), computer vision, dashboards with interactive charts, file uploading, and much more. The book concludes by delving into the implementation of advanced skills and deployment techniques. By the end of this book, you’ll have transformed into a proficient developer, equipped with advanced skills for handling databases, implementing secure login processes, managing session states, creating multipage applications, and seamlessly deploying them on the cloud.
Table of Contents (23 chapters)
Free Chapter
1
Part 1: Getting Started with Streamlit
5
Part 2: Building a Basic Web App for Essential Streamlit Skills
10
Part 3: Developing Advanced Skills with a Covid-19 Detection Tool
15
Part 4: Advanced Techniques for Secure and Customizable Web Applications

Summary

In this chapter, we explored Streamlit’s main out-of-the-box features and widgets. We started by creating an empty Python file and launching Streamlit, where we saw how to manage its web interface using the “rerun” feature and leverage its real-time updating functionality.

Then, we learned how to deal with text in various ways, in terms of size, colors, and format. We also explored multimedia widgets, such as images, audio, and video.

A lot of elements, such as buttons, checkboxes, radio buttons, and others, were also explained and utilized.

Many different kinds of inputs are supported natively – it’s very easy to input text, numbers, dates, time, and so on. Widgets such as text areas or sliders are also ready to be used out of the box.

As we saw, data plots are extremely easy to create – we can use DataFrames and plot bar, line, or area charts with one line of code. Even heatmaps are a clean and neat option.

Even formatting...