Live Coding a Streamlit App for Data Science from Scratch

**Introducing Streamlit: A Powerful Tool for Data Science**

Streamlit is a powerful tool that allows users to create data-driven applications with minimal coding. It provides an intuitive interface for building, sharing, and deploying apps that can be used by anyone, regardless of their technical expertise. With Streamlit, users can easily import datasets, visualize data, build machine learning models, and deploy the app to the cloud.

**Building Data-Driven Applications with Streamlit**

Streamlit offers a wide range of input widgets that allow users to customize various parameters and interact with their apps. These widgets include sliders, selectboxes, checkboxes, and more. Users can easily add these widgets to their app and experiment with different parameters to see how they affect the output. The app will rerun the code and generate data and models based on the user's input.

**Data Display Options**

Streamlit provides various options for displaying data, including plots, charts, and tables. Users can choose from a range of built-in plotting libraries, such as Matplotlib and Seaborn, to create high-quality visualizations. The app also supports custom plots and charts, allowing users to add their own visualizations to the app.

**Metrics and Data Analysis**

Streamlit's metrics feature provides users with detailed insights into how their app is performing. This includes metrics on user engagement, session duration, and more. Users can use this information to refine their app and improve its performance.

**Deployment Options**

Streamlit allows users to deploy their apps to the cloud for easy sharing with others. The platform offers a free tier with unlimited public apps, as well as paid plans for private apps and teams. Users can sign up for Streamlit Cloud and deploy their app to the cloud, where it can be accessed by anyone.

**Sharing Your App**

Once an app is deployed to Streamlit Cloud, users can share its URL with others. This allows others to interact with the app and experiment with different parameters without having to set up anything themselves. Users can also use this feature to showcase their app at conferences or events.

**Example: Deploying an App on Streamlit Cloud**

To demonstrate the power of Streamlit, let's take a look at an example app that was deployed on Streamlit Cloud. The app is called "ML Auto" and it uses machine learning to predict instrument prices. Users can interact with the app by selecting different instruments and seeing how the price changes. This app demonstrates the potential of Streamlit for building data-driven applications.

**Getting Started with Streamlit**

Streamlit offers a range of resources to help users get started, including tutorials, documentation, and a community forum. Users can start building their own apps today by downloading the Streamlit tool and experimenting with the various widgets and features. With its intuitive interface and powerful tools, Streamlit is an ideal platform for anyone looking to build data-driven applications.

**Conclusion**

Streamlit is a powerful tool that allows users to create data-driven applications with minimal coding. Its intuitive interface and wide range of input widgets make it easy to build apps that can be used by anyone. With its deployment options and sharing features, Streamlit makes it easy to share your app with others and showcase its potential. Whether you're a seasoned data scientist or just starting out, Streamlit is an ideal platform for building data-driven applications.

**Example Code**

To give users a better idea of how Streamlit works, let's take a look at some example code:

```python

import streamlit as st

# Import dataset

import pandas as pd

# Load dataset

df = pd.read_csv('data.csv')

# Display dataset

st.write(df)

# Define machine learning model

from sklearn.linear_model import LinearRegression

model = LinearRegression()

# Train model on dataset

model.fit(df[['feature1', 'feature2']], df['target'])

# Make predictions using model

predictions = model.predict(df[['feature1', 'feature2']])

# Display predictions

st.write(predictions)

```

This code imports a dataset, trains a machine learning model on the data, and makes predictions using the model. Streamlit's input widgets allow users to customize various parameters and interact with their app.

**API Documentation**

For more information on Streamlit's API, including documentation on the available widgets and features, please visit our website at [www.streamlit.io](http://www.streamlit.io).

**FAQs**

For answers to frequently asked questions about Streamlit, please visit our FAQ page at [www.streamlit.io/faq](http://www.streamlit.io/faq).

"WEBVTTKind: captionsLanguage: enin a prior video i've shown you how you could get started with the 66 days of data by showing you how you could build your first data science project and how you could share that on github and so i'll provide the link to that video in the video description and in this particular video i'm going to show you how you could take that a step further by converting the data science projects that you have created into an interactive data application and we're going to do that using the streamlit library in python and so without further ado we're starting right now all right and so let's get started so the first thing that you want to do is to fire up your own coding environment and so what i have here is vs code and so if you haven't yet have this on your computer you want to install it first and then what i have in these windows will be to the left here i'll click on the explorer so that i have access to the various folders in my computer and then i'll have the terminal at the bottom here so that i could type in the various command line prompts code and then in the top hand side here i'll have the window where i'll be typing in code into the files and so what i've done here is i've created a folder called trimlets and so you could do the same or you could create another folder of your own interest or liking and here in the terminal i have it open and i'll start by creating a unique content environment and so typically what i like to do when building projects is that i like to create unique environments that will house the contents for the project and so that it won't potentially cause any problem with the dependencies of the libraries because each project might have different requirements in terms of the libraries that you're going to be using and you don't want one project to have any influence on the other ones because let's say that in a new project you might have installed some libraries and that might have led to the downgrading of some other libraries that you have already pre-installed and when you hop back to the previous projects that you have been working on it might not work because the libraries might have been downgraded from your future projects and so if you have unique environments of conda for each of your project then that won't be an issue in order to create a content environment you want to type in conda create dash n for new and then the name of your contact environment so here i'm going to call it streamlit and then i'm going to type in python 3.10 which is the current version of python enter and wait a few moments and then it'll ask you to install all of these defaults and so you're just going to type in a capital y enter and it'll install all of the dependencies wait for a moment as it is being installed into your computer all right and so now it's finished and so in order to activate your new contact environment called streamlit you want to type in conda activate streamlets and in order to deactivate the environment you could type in conda deactivate okay so let's go ahead and activate it conda activate streamlit alright and there you go you'll notice that the content environment name is on the left hand side here which is called streamlet and if you deactivate it it will be called base b-a-s-e okay so let's go ahead and click on the streamlight folder here and then i'll click on a new file icon i type in the name of the new app i'll call it app.py enter all right and so typically when you're writing an app in swimland you could feel free to script your app one line at a time and so your app will be able to evolve as you have more ideas coming up okay and so let me show you import streamline sst oh i think it's automatic here all right and so a simple app would be like this st dot write and then you could just say hello world so this is the right of passage into writing your first streamlined app as in any other tutorial of a new programming language you want to be able to write hello world all right and now that we have already written out the contents of our first application in streamland then we're going to first install streamlit so in order to do that you want to type in pip install streamlit hit on enter all right so it has already installed all of the dependencies and so let's clear this using clear function and let's activate or run the app here so you could type in streamlid run app dot py enter okay all right there you go hello world let me adjust the window size here okay and so as you can see here you could create a very super simple app just using two lines import streamlet that's st and then you could use any streamlined function of your choice such as sc.rights and then you type in hello world and that's all and then when you run it you type in streamlitronatp.py and you'll be able to see your simple app right here and so there are several other functionalities that you could try out so why don't i do this let me go to the streamlet api okay um right here so there's several elements that you could potentially use for your streamline app text element data display images input widgets so why don't we go for text element first and so markdown is very flexible in that you could potentially write your own title header subheader all in markdown so let me show you if we type in markdown the same would work and then it'll ask whether we want to update then we could say rerun or always rerun and if it is always we run every time that we update the code and then we saved it it will automatically rerun the app otherwise you'll have to click rerun for it to rerun every time so let's click on always rerun so if i make this bold and markdown save it you'll notice that this becomes bold if i add a hash symbol it becomes h1 heading save it and you can see it here and if you want to make it into multiple lines you want to have three quotation symbol and then you could do it like this all right save it yeah so i really like how markdown is super flexible in allowing you to create all of the various headings here so let me show you making another subheading heading 3 because we have 3 here and as mentioned in prior videos i like to use heading 1 and 3. let me show you let me change this to heading one so that you can see the various size difference heading four so we'll type in blah blah blah as a text filler save it okay so heading 4 is slightly smaller okay so it doesn't seem oh okay let me add one more okay became smaller how do i delete this i'll add heading six okay see how small i can go seven and let's try it save it oh okay it seems to cap at six so six seems to be the maximal levels all right so you can make text bold by using double asterisk if you have a single asterisk it will be an italic bode and what if you have three what will it be will be bold and in italic like that and you could also add a horizontal line by using three dash and then you get a horizontal line and what's super cool about this is that you could also add emojis as well let's use a psi emoji here save it and there you go looks a little bit like notion right and let me show you how we could get in data interactively from the github repo let's go to here data let's go to the solubility data set here click on raw copy the link and then we'll import panda so that we could import the csv file so import pandas spd and then outside of the markdown function we want to type in df pd read csv and so i'm making this particular application spontaneously and as i'm explaining i'm figuring out what to add and so that's the great thing about streamlid is that you could add incrementally line by line new features to the application and so with each iteration you could make adjustment to where you could add or remove lines of code and your app will be interactively updated so let's import the data here copy the and paste the url and if i just type in df it should be able to display it here there you go so this is part of the magic function of streamlit is that you could just type in the name of the variable and it'll magically appear okay so what we could do is we will type in st so let me show you here we're going to make use of the st.header and just in case you're wondering how to make use of that if you scroll down there should be an example box here that's c dot header okay and so you could essentially copy and paste it here save and it should update here this is the header and so i could type data there you go and so we have the data frame updated here and if you click here it should expand to the entire table click it again to take it out into the normal view you could add graphs plots to it let me show you click here let's go to the chart elements all right and so let's choose one that you like scatter plots on maps okay this looks pretty cool let's click on that and we already have streamlight imported so we'll add pandas which is already in there so we'll add numpy and then i'll add this into the app and so there you go why don't i call this df2 df2 and st.header i'll call this map i'll call the first one csv data all right and so let's save it and go back to the app there you go you got the app and now you have the map and it's interactive too if you zoom in you zoom out and the data here is mapped onto the map here and great thing is you could see the example right inside the api documentation and you could just copy the code here and then paste it into your own app and then you can run it and see how it looks like and then you could modify the components in the example code here let me show you something else to see what do we want to add so you could use bluntly you could use pipelot you could use altair line chart area chart why don't we explore input widgets here and let's have some text inputs so that users could enter their own information and then the data will be updated so when i copy here paste the code save it there you go this is movie title life of brian the current movie title is left for brian so we will print out whatever you have typed here why don't we type in don't look up new movie on netflix enter and there you go this updates so i could delete this st header movie title right let me delete that as well so your code will be super clean in seven lines you could be able to accept user input and you can make it a bit different than the other text you can make it in italic or bold as well let's see if we can do that life of brian okay that's the default can we do this okay and now it's in bold and bold italic all right cool let's have a look at another elements file uploader how about that let's try that you'll be able to accept input from the user insert a file uploader that access multiple files at a time this accepts a single file at a time okay so we could copy the code here save it and here you go you get a file uploader and so let me try to save this into the desktop and let's see i could browse file click on desktop click on the solubility data set and it will be uploaded and the contents are printed here actually because it is a csv file okay so there's various versions so i'll just delete all of these here they're not relevant to my case so we have csv file should work this one should work okay there you go it's a simple csv file and you see that it's printed here and you could when you print it out you could add some header here as well data frame or how about data right so you have various headings for uploading the file and also for displaying the data so typically for input widgets i like to put it into the sidebar and so let me show you how you can do that so st.file uploader you could type in sidebar dot file uploader save it and it moves to the left as you can see here and it will be able to collapse as well oh and the name file uploader needs to go to the left as well so i'll go here to line four add sidebar here st.sidebar dot header save it and now it went to the left okay and only the data here is shown on the right let's have a look at other elements here what else would we want how about layouts so we already use sidebar there's expander container columns i think columns is very helpful let's click on it and let me make a note here i really like how the documentation also has a preview image that shows like a cartoon illustration of what the particular input widget is doing so this helps you to quickly take a look and figure out what this particular widget function is all about so columns you can see from the three columns so here you could have three columns for the images so essentially it is creating three variables and then using the s2.columns and then for each code one you want to add an image and a header inside so we could copy the code here and then we'll delete the prior save it and let's have a look all right cool so we have three columns here and if we want to add the fourth column like that four take the third one and then save it okay now we will have four okay let's see what else should we build as you can see it's super easy to try out the various streamlight functions so you just play around or just essentially browsing through the api documentation taking a look at the names of the various functions and then look at the example code paste it have a look how it looks like and play around modify the code as you like media elements let's have a look here so in the prior example we've added images we could also add audio and video as well let's have a look on the video okay so this is the video okay let's see let's copy the code paste it and let's copy the url let's go to the data professor youtube channel let's go to the latest video copy the link would that work oh probably not the rb let's see okay okay that was for local files so why don't i do this data could be the url okay so i'll just put in the url here then let's see would that work okay cool it works now and okay i guess this is already set at default oh and we could specify the time let's see let's see that we want it to have at 120 seconds there you go it started at 2 minutes 120 seconds super cool let's make it android 80 rerun it and when we click on it it starts at the exact time where we want it to start you can see here we have various timelines so let's say this is 15 about 14.55 and at 14.55 what is your favorite tech stack we could do it like this 14 55 14 55 15 minutes so let's see if we have 15 times 60 then we have 900 seconds so roughly if we start at 900 seconds and then we can see you know kind of like that and then when we click on it it will start at precisely where we want it to sure about the favorite pick stack all right cool let's go back to the documentation let's see what else input widgets data display i think we've done a lot of data display already from the data frame okay oh metrics okay this is super cool yeah i like this you could also use streamline to create dashboards as well here let's go to metrics copy the code here and save it there you go you have your own dashboard right so if you could read in data let's say you stored your data in github you read it in and then you could call your data and display it in here and then you could access the data in real time using your streamlit app and then you could share the url of your streamlight app so here we've deployed it locally by running streamlet run app.py but alternatively you could deploy it to the cloud so that other users around the world could access your application easily using the url or the link provided from streamlit cloud and so you could go here go to streamlet.io click on cloud so it's essentially streamlight dot io slash cloud and you could sign up for free and you'll notice in the plans here that there's a community tier and also the teams and the enterprise so for those of you who are using the free tier you could have one private app and also unlimited public apps as well or if you're expanding into using more private apps then you could sign up for the team's account here and so it is super cool for you to share your apps with the world so let me show you an example let's go to the github and so in prior tutorials on streamlid i've shared the link let's see where is an example right here ml auto app open instrument so yeah i just clicked on here the link which is essentially share dot streamline.io and then the name data professor slash and the name of the folder repo and then app.py and so here users could interact with your apps interactively and all of the input widgets will allow them to customize the various parameters and then the app will rerun the code and generate the data and the model based on your parameters here all right so this is an example of an app that was deployed to the streamlight cloud so let's have a look back at the documentation so yeah you could do the same thing here and scroll through the various elements widgets that streamlight provides click on it you know and then play around with it so as i've shown you already you could scroll through the documentation of srimlet and play around with the various example code and you could create some amazing stuff with minimal coding and let me know in the comments down below which apps are you creating and feel free to share your deployed app using extremely cloud which is for free and i love to have a look at all of them if you reach this far in the video please drop a fire emoji in the comment section and also smash the like button subscribe if you haven't already and also hit on the notification bell so that you will be notified of the next video and as always the best way to learn data science is to do data science and please enjoy the journeyin a prior video i've shown you how you could get started with the 66 days of data by showing you how you could build your first data science project and how you could share that on github and so i'll provide the link to that video in the video description and in this particular video i'm going to show you how you could take that a step further by converting the data science projects that you have created into an interactive data application and we're going to do that using the streamlit library in python and so without further ado we're starting right now all right and so let's get started so the first thing that you want to do is to fire up your own coding environment and so what i have here is vs code and so if you haven't yet have this on your computer you want to install it first and then what i have in these windows will be to the left here i'll click on the explorer so that i have access to the various folders in my computer and then i'll have the terminal at the bottom here so that i could type in the various command line prompts code and then in the top hand side here i'll have the window where i'll be typing in code into the files and so what i've done here is i've created a folder called trimlets and so you could do the same or you could create another folder of your own interest or liking and here in the terminal i have it open and i'll start by creating a unique content environment and so typically what i like to do when building projects is that i like to create unique environments that will house the contents for the project and so that it won't potentially cause any problem with the dependencies of the libraries because each project might have different requirements in terms of the libraries that you're going to be using and you don't want one project to have any influence on the other ones because let's say that in a new project you might have installed some libraries and that might have led to the downgrading of some other libraries that you have already pre-installed and when you hop back to the previous projects that you have been working on it might not work because the libraries might have been downgraded from your future projects and so if you have unique environments of conda for each of your project then that won't be an issue in order to create a content environment you want to type in conda create dash n for new and then the name of your contact environment so here i'm going to call it streamlit and then i'm going to type in python 3.10 which is the current version of python enter and wait a few moments and then it'll ask you to install all of these defaults and so you're just going to type in a capital y enter and it'll install all of the dependencies wait for a moment as it is being installed into your computer all right and so now it's finished and so in order to activate your new contact environment called streamlit you want to type in conda activate streamlets and in order to deactivate the environment you could type in conda deactivate okay so let's go ahead and activate it conda activate streamlit alright and there you go you'll notice that the content environment name is on the left hand side here which is called streamlet and if you deactivate it it will be called base b-a-s-e okay so let's go ahead and click on the streamlight folder here and then i'll click on a new file icon i type in the name of the new app i'll call it app.py enter all right and so typically when you're writing an app in swimland you could feel free to script your app one line at a time and so your app will be able to evolve as you have more ideas coming up okay and so let me show you import streamline sst oh i think it's automatic here all right and so a simple app would be like this st dot write and then you could just say hello world so this is the right of passage into writing your first streamlined app as in any other tutorial of a new programming language you want to be able to write hello world all right and now that we have already written out the contents of our first application in streamland then we're going to first install streamlit so in order to do that you want to type in pip install streamlit hit on enter all right so it has already installed all of the dependencies and so let's clear this using clear function and let's activate or run the app here so you could type in streamlid run app dot py enter okay all right there you go hello world let me adjust the window size here okay and so as you can see here you could create a very super simple app just using two lines import streamlet that's st and then you could use any streamlined function of your choice such as sc.rights and then you type in hello world and that's all and then when you run it you type in streamlitronatp.py and you'll be able to see your simple app right here and so there are several other functionalities that you could try out so why don't i do this let me go to the streamlet api okay um right here so there's several elements that you could potentially use for your streamline app text element data display images input widgets so why don't we go for text element first and so markdown is very flexible in that you could potentially write your own title header subheader all in markdown so let me show you if we type in markdown the same would work and then it'll ask whether we want to update then we could say rerun or always rerun and if it is always we run every time that we update the code and then we saved it it will automatically rerun the app otherwise you'll have to click rerun for it to rerun every time so let's click on always rerun so if i make this bold and markdown save it you'll notice that this becomes bold if i add a hash symbol it becomes h1 heading save it and you can see it here and if you want to make it into multiple lines you want to have three quotation symbol and then you could do it like this all right save it yeah so i really like how markdown is super flexible in allowing you to create all of the various headings here so let me show you making another subheading heading 3 because we have 3 here and as mentioned in prior videos i like to use heading 1 and 3. let me show you let me change this to heading one so that you can see the various size difference heading four so we'll type in blah blah blah as a text filler save it okay so heading 4 is slightly smaller okay so it doesn't seem oh okay let me add one more okay became smaller how do i delete this i'll add heading six okay see how small i can go seven and let's try it save it oh okay it seems to cap at six so six seems to be the maximal levels all right so you can make text bold by using double asterisk if you have a single asterisk it will be an italic bode and what if you have three what will it be will be bold and in italic like that and you could also add a horizontal line by using three dash and then you get a horizontal line and what's super cool about this is that you could also add emojis as well let's use a psi emoji here save it and there you go looks a little bit like notion right and let me show you how we could get in data interactively from the github repo let's go to here data let's go to the solubility data set here click on raw copy the link and then we'll import panda so that we could import the csv file so import pandas spd and then outside of the markdown function we want to type in df pd read csv and so i'm making this particular application spontaneously and as i'm explaining i'm figuring out what to add and so that's the great thing about streamlid is that you could add incrementally line by line new features to the application and so with each iteration you could make adjustment to where you could add or remove lines of code and your app will be interactively updated so let's import the data here copy the and paste the url and if i just type in df it should be able to display it here there you go so this is part of the magic function of streamlit is that you could just type in the name of the variable and it'll magically appear okay so what we could do is we will type in st so let me show you here we're going to make use of the st.header and just in case you're wondering how to make use of that if you scroll down there should be an example box here that's c dot header okay and so you could essentially copy and paste it here save and it should update here this is the header and so i could type data there you go and so we have the data frame updated here and if you click here it should expand to the entire table click it again to take it out into the normal view you could add graphs plots to it let me show you click here let's go to the chart elements all right and so let's choose one that you like scatter plots on maps okay this looks pretty cool let's click on that and we already have streamlight imported so we'll add pandas which is already in there so we'll add numpy and then i'll add this into the app and so there you go why don't i call this df2 df2 and st.header i'll call this map i'll call the first one csv data all right and so let's save it and go back to the app there you go you got the app and now you have the map and it's interactive too if you zoom in you zoom out and the data here is mapped onto the map here and great thing is you could see the example right inside the api documentation and you could just copy the code here and then paste it into your own app and then you can run it and see how it looks like and then you could modify the components in the example code here let me show you something else to see what do we want to add so you could use bluntly you could use pipelot you could use altair line chart area chart why don't we explore input widgets here and let's have some text inputs so that users could enter their own information and then the data will be updated so when i copy here paste the code save it there you go this is movie title life of brian the current movie title is left for brian so we will print out whatever you have typed here why don't we type in don't look up new movie on netflix enter and there you go this updates so i could delete this st header movie title right let me delete that as well so your code will be super clean in seven lines you could be able to accept user input and you can make it a bit different than the other text you can make it in italic or bold as well let's see if we can do that life of brian okay that's the default can we do this okay and now it's in bold and bold italic all right cool let's have a look at another elements file uploader how about that let's try that you'll be able to accept input from the user insert a file uploader that access multiple files at a time this accepts a single file at a time okay so we could copy the code here save it and here you go you get a file uploader and so let me try to save this into the desktop and let's see i could browse file click on desktop click on the solubility data set and it will be uploaded and the contents are printed here actually because it is a csv file okay so there's various versions so i'll just delete all of these here they're not relevant to my case so we have csv file should work this one should work okay there you go it's a simple csv file and you see that it's printed here and you could when you print it out you could add some header here as well data frame or how about data right so you have various headings for uploading the file and also for displaying the data so typically for input widgets i like to put it into the sidebar and so let me show you how you can do that so st.file uploader you could type in sidebar dot file uploader save it and it moves to the left as you can see here and it will be able to collapse as well oh and the name file uploader needs to go to the left as well so i'll go here to line four add sidebar here st.sidebar dot header save it and now it went to the left okay and only the data here is shown on the right let's have a look at other elements here what else would we want how about layouts so we already use sidebar there's expander container columns i think columns is very helpful let's click on it and let me make a note here i really like how the documentation also has a preview image that shows like a cartoon illustration of what the particular input widget is doing so this helps you to quickly take a look and figure out what this particular widget function is all about so columns you can see from the three columns so here you could have three columns for the images so essentially it is creating three variables and then using the s2.columns and then for each code one you want to add an image and a header inside so we could copy the code here and then we'll delete the prior save it and let's have a look all right cool so we have three columns here and if we want to add the fourth column like that four take the third one and then save it okay now we will have four okay let's see what else should we build as you can see it's super easy to try out the various streamlight functions so you just play around or just essentially browsing through the api documentation taking a look at the names of the various functions and then look at the example code paste it have a look how it looks like and play around modify the code as you like media elements let's have a look here so in the prior example we've added images we could also add audio and video as well let's have a look on the video okay so this is the video okay let's see let's copy the code paste it and let's copy the url let's go to the data professor youtube channel let's go to the latest video copy the link would that work oh probably not the rb let's see okay okay that was for local files so why don't i do this data could be the url okay so i'll just put in the url here then let's see would that work okay cool it works now and okay i guess this is already set at default oh and we could specify the time let's see let's see that we want it to have at 120 seconds there you go it started at 2 minutes 120 seconds super cool let's make it android 80 rerun it and when we click on it it starts at the exact time where we want it to start you can see here we have various timelines so let's say this is 15 about 14.55 and at 14.55 what is your favorite tech stack we could do it like this 14 55 14 55 15 minutes so let's see if we have 15 times 60 then we have 900 seconds so roughly if we start at 900 seconds and then we can see you know kind of like that and then when we click on it it will start at precisely where we want it to sure about the favorite pick stack all right cool let's go back to the documentation let's see what else input widgets data display i think we've done a lot of data display already from the data frame okay oh metrics okay this is super cool yeah i like this you could also use streamline to create dashboards as well here let's go to metrics copy the code here and save it there you go you have your own dashboard right so if you could read in data let's say you stored your data in github you read it in and then you could call your data and display it in here and then you could access the data in real time using your streamlit app and then you could share the url of your streamlight app so here we've deployed it locally by running streamlet run app.py but alternatively you could deploy it to the cloud so that other users around the world could access your application easily using the url or the link provided from streamlit cloud and so you could go here go to streamlet.io click on cloud so it's essentially streamlight dot io slash cloud and you could sign up for free and you'll notice in the plans here that there's a community tier and also the teams and the enterprise so for those of you who are using the free tier you could have one private app and also unlimited public apps as well or if you're expanding into using more private apps then you could sign up for the team's account here and so it is super cool for you to share your apps with the world so let me show you an example let's go to the github and so in prior tutorials on streamlid i've shared the link let's see where is an example right here ml auto app open instrument so yeah i just clicked on here the link which is essentially share dot streamline.io and then the name data professor slash and the name of the folder repo and then app.py and so here users could interact with your apps interactively and all of the input widgets will allow them to customize the various parameters and then the app will rerun the code and generate the data and the model based on your parameters here all right so this is an example of an app that was deployed to the streamlight cloud so let's have a look back at the documentation so yeah you could do the same thing here and scroll through the various elements widgets that streamlight provides click on it you know and then play around with it so as i've shown you already you could scroll through the documentation of srimlet and play around with the various example code and you could create some amazing stuff with minimal coding and let me know in the comments down below which apps are you creating and feel free to share your deployed app using extremely cloud which is for free and i love to have a look at all of them if you reach this far in the video please drop a fire emoji in the comment section and also smash the like button subscribe if you haven't already and also hit on the notification bell so that you will be notified of the next video and as always the best way to learn data science is to do data science and please enjoy the journey\n"