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

Deploying and Managing Complex Libraries on Streamlit Share

Let’s continue our exploration of deployment on Streamlit Share, a service provided by the Streamlit framework that allows users to deploy their web applications, implemented with Streamlit, to the cloud with just a few clicks. This time, we have to pack up the Covid-19 Detection Tool app and try to deploy it. Many heavy libraries will be involved here, so this time, the task is a little bit more complex.

When we deal with heavy files, the deployment task becomes more difficult because GitHub has some limitations regarding file size; in fact, it is not possible to directly upload files with a size over 25 MB. In the case of our Covid-19 Detection Tool app, unfortunately, the file of the AI model is over 25 MB. Files to be uploaded on GitHub can’t be any bigger than this, at least at the time of writing this book.

There are some techniques we can use to bypass this limit; I’ll show you a rather smart...