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 understood the logic behind login and signup pages and learned a very solid way of implementing and managing accounts according to the best practices summarized here.

When users sign up on our web apps, they provide a username and a password. The username serves as their unique identifier, while the password is a secret known only to them. For security, these credentials are stored in a database, but the passwords are not kept as plain text. Instead, they are converted into a hash, a one-way function that is easy to compute from a password but hard to reverse. This ensures that even if a hacker accesses the database, they can’t easily decipher the passwords.

During login, the user’s entered password is hashed and compared with the stored hash; if they match, the user is granted access. Storing these hashes is crucial for allowing users to log in and recover passwords. Although hacking these hashes is possible, it is much more difficult...