𝔖 Scriptorium
✦   LIBER   ✦

πŸ“

Web App Development Made Simple with Streamlit: A web developer's guide to effortless web app development, deployment

✍ Scribed by Rosario Moscato


Publisher
Packt Publishing Pvt Ltd
Year
2024
Tongue
English
Leaves
401
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Synopsis


Unlock the full potential of Streamlit, mastering web app development from setup to deployment with practical guidance, advanced techniques, and real-world examples

Key Features
Identify and overcome web development challenges, crafting dedicated application skeletons using Streamlit
Understand how Streamlit's widgets and components work to implement any kind of web app
Manage web application development and deployment with ease using the Streamlit Cloud service
Purchase of the print or Kindle book includes a free PDF eBook

Book Description
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.

What You Will Learn
Develop interactive web apps with Streamlit and deploy them seamlessly on the cloud
Acquire in-depth theoretical and practical expertise in using Streamlit for app development
Use themes and customization for visually appealing web apps tailored to specific needs
Implement advanced features including secure login, signup processes, file uploaders, and database connections
Build a catalog of scripts and routines to efficiently implement new web apps
Attain autonomy in adopting new Streamlit features rapidly and effectively

Who this book is for
This book is for Python programmers, web developers, computer science students, and IT enthusiasts with a foundation in Python (or any programming language) who have a passion for creating visually appealing applications. If you already know how to write programs, this book will help you evolve into an adept web application developer skilled at converting command-line tools into impressive, cloud-hosted applications.

✦ Table of Contents


Web App Development Made Simple with Streamlit
Contributors
About the author
About the reviewers
Preface
Who this book is for
What this book covers
To get the most out of this book
Download the example code files
Conventions used
Get in touch
Share Your Thoughts
Download a free PDF copy of this book
Part 1: Getting Started with Streamlit
1
Getting to Know Streamlit – A Brief Overview
The importance of turning an idea into a prototype – the changing scenario in computing methods
The importance of a full Python web framework
Local versus the cloud
Python libraries for web applications (Flask and Django)
Examples of Streamlit’s capabilities
The importance of turning an idea into a prototype
Summary
2
Setting Up the Python Coding Environment
Technical requirements
Setting up the OS
IDE selection
What is a virtual environment?
Summary
3
Exploring Streamlit’s Features and Functionality
Technical requirements
Installing and launching Streamlit
Streamlit features and widgets
Colored textboxes
Images, audio, and video
Inputting text and numbers
Slider
Balloons
DataFrames, plots, and visualizations
Date, time, and more
Summary
Part 2: Building a Basic Web App for Essential Streamlit Skills
4
Streamlit Essentials – Configuring the Environment, Managing Packages, and More
Technical requirements
Configuring our environment
Installing and importing packages
App skeleton building
Building the menu and adding decorations
Summary
5
Organizing and Displaying Content with Columns, Expanders, and NLP Techniques
Technical requirements
Organizing and arranging content in a web app
Adding decorations
Adding the Text Analysis part
Hiding and showing parts depending on importance
Adding columns, expanders, and a textbox
Adding the two basic functions
Adding a wordcloud
Introducing NLP concepts – tokens and lemmas
Adding the summarization function
Tokens and lemmas
Using the text_analysis function
Summary
6
Implementing NLP Techniques for Text Analysis and Processing in Streamlit
Technical requirements
Deep-diving into NLP techniques
What is translation?
What is sentiment analysis?
Deep-diving into language translation
Adding a text area
Performing the translation task
Diving deep into sentiment analysis
Recap of our first web application
Summary
7
Sharing and Deploying Your Apps on the Cloud Using Streamlit Share
Technical requirements
Understanding the importance of deployment
Best practices in web application deployment
Additional benefits of web application deployment
What are Streamlit Share and Streamlit Cloud?
A quick introduction to GitHub
Getting familiar with the Streamlit Share service
Summary
Part 3: Developing Advanced Skills with a Covid-19 Detection Tool
8
Advanced Environment Setup and Package Management for Building an AI-Powered Web App
Technical requirements
Configuring our environment
Installing and importing packages
Building the app skeleton
Building the menu and adding decorations
Summary
9
Optimizing Streamlit Web App UX with Customization and UI Features
Technical requirements
Dealing with more advanced web app features
Adding the Image Enhancement section using the Pillow library
Contrast
Brightness
Original
Adding the Disclaimer and Info section
Summary
10
Utilizing Pretrained Models to Create Specialized and Personalized Web Applications
Technical requirements
Understanding the benefits of pretrained ML models
Creating customized web apps to improve user experience
Utilizing predictions from ML
Summary
11
Deploying and Managing Complex Libraries on Streamlit Share
Technical requirements
Consolidating cloud deployment skills
Avoiding bad behavior
Creating a list of all the packages that were installed and used to develop the Python code
Creating a GitHub repository
Avoiding runtime errors
Managing difficult libraries
Deploying the app on Streamlit Cloud
Summary
Part 4: Advanced Techniques for Secure and Customizable Web Applications
12
Smart File Uploading – Advanced Techniques for Professional Web Applications
Technical requirements
Understanding the customized features of the file uploader
Creating a new virtual environment
Building the app skeleton
Creating a radio button for the app menu
Creating a suitable file uploader for web apps
Simplifying web apps with smart components
Summary
13
Creating a Secure Login and Signup Process for Web Applications
Technical requirements
Understanding the logic behind the login and signup page
What is SHA-256 and why should we use it?
Connecting to a relational database and interacting with it
Creating the Login menu
Creating the Sign Up menu
Running the app
Adding a graphical user interface
Retrieving or saving credentials from and to the database
Summary
14
Customizing Pages, Personalizing Themes, and Implementing Multi-Pages
Technical requirements
Understanding new features related to deep customization
Creating deeply customized pages
Understanding theming and .toml files
Exploring the multi-pages feature
Creating multi-pages
Passing a variable from one page to another
Summary
15
Enhancing Web Apps with Forms, Session State, and Customizable Subdomains
Technical requirements
What are forms and when and why do we use them?
The context manager approach
The classic approach
What is Session State and when do we use it?
What are customizable subdomains and what possibilities do they offer?
Summary
16
Takeaways and Conclusion
How and when to use our web app working template
How and when to use databases and advanced skills
How to deploy web applications on the cloud
Farewell!
Index
Why subscribe?
Other Books You May Enjoy
Packt is searching for authors like you
Rosario Moscato
Download a free PDF copy of this book


πŸ“œ SIMILAR VOLUMES


Developing Web Apps with Haskell and Yes
✍ Michael Snoyman πŸ“‚ Library πŸ“… 2015 πŸ› O'Reilly Media 🌐 English

This fast-moving guide introduces web application development with Haskell and Yesod, a potent language/framework combination that supports high-performing applications that are modular, type-safe, and concise. Fully updated for Yesod 1.4, this second edition shows you how Yesod handles widgets, for

Developing web apps with Haskell and Yes
✍ Snoyman, Michael πŸ“‚ Library πŸ“… 2015 πŸ› O'Reilly Media 🌐 English

<p>This fast-moving guide introduces web application development with Haskell and Yesod, a potent language/framework combination that supports high-performing applications that are modular, type-safe, and concise. Fully updated for Yesod 1.4, this second edition shows you how Yesod handles widgets,

Developing Web Apps with Haskell and Yes
✍ Michael Snoyman πŸ“‚ Library πŸ“… 2015 πŸ› O'Reilly Media 🌐 English

<div><p>This fast-moving guide introduces web application development with Haskell and Yesod, a potent language/framework combination that supports high-performing applications that are modular, type-safe, and concise. Fully updated for Yesod 1.4, this second edition shows you how Yesod handles widg

Developing Web Apps with Haskell and Yes
✍ Michael Snoyman πŸ“‚ Library πŸ“… 2015 πŸ› O'Reilly Media 🌐 English

<div><p>This fast-moving guide introduces web application development with Haskell and Yesod, a potent language/framework combination that supports high-performing applications that are modular, type-safe, and concise. Fully updated for Yesod 1.4, this second edition shows you how Yesod handles widg

Developing Web Apps with Haskell and Yes
✍ Michael Snoyman πŸ“‚ Library πŸ“… 2015 πŸ› O'Reilly Media 🌐 English

<div><p>This fast-moving guide introduces web application development with Haskell and Yesod, a potent language/framework combination that supports high-performing applications that are modular, type-safe, and concise. Fully updated for Yesod 1.4, this second edition shows you how Yesod handles widg

Learning Web App Development
✍ Semmy Purewal πŸ“‚ Library πŸ“… 2014 πŸ› O'Reilly Media 🌐 English

Grasp the fundamentals of web application development by building a simple database-backed app from scratch, using HTML, javascript, and other open source tools. Through hands-on tutorials, this practical guide shows inexperienced web app developers how to create a user interface, write a server, bu