An aspiring Full Stack Developer’s guide to quickly developing and deploying scalable web applications

There used to be a time not so long ago when creating web applications was the work of child prodigies the likes of Mark Zuckerberg and Elon Musk. Or alternatively, you could enroll in a fancy college, spend the best four years of your life (and your parent’s retirement savings) learning to program and then end up making subpar 90’s style web apps. Well, we’ve come a long way since then. With the inundation of open source tools and cloud infrastructure, developing and deploying phenomenal applications has been largely democratized. Honestly, being a developer has probably never been so straightforward, all you need is the correct stack of tools and you’re good to go for most purposes.

I am going to introduce you to the three main tools that I have used abundantly myself to develop frontend user interfaces, provision server-side infrastructure, and finally to deploy all the goodness to a web server for the world at large. In this tutorial, we will be creating a simple job recommender app. The user will select the country they wish to work in and will then upload their resume. Subsequently, the app will analyze the uploaded file for key words and will search a database of companies to find the most similar matches. Before we proceed, I am going to assume that you are already well versed with Python and some of its packages such as Pandas and NLTK, as well as the fact that you have a GitHub account.

Streamlit is a brand new web framework that has all but closed the web development gap for Python developers. Previously, one would have to use Flask or Django to deploy an app to the web, which solicited a sound understanding of HTML and CSS. Thankfully, Streamlit is a pure Python package with an exceptionally shallow learning curve, that has reduced the development time from weeks to hours, kid you not. While it is branded as a framework for machine learning and data science apps, I find that to be rather undignifying; indeed many (myself included) have used Streamlit to brandish dazzling general purpose apps.

In this section, I am going to show you how to install, build and run a Streamlit app in real-time. First things first, shoot up Anaconda and install Streamlit in your environment. Alternatively, you may run the following command in Anaconda prompt.

pip install streamlit

Once you’ve got that out the way, proceed…

Continue reading: https://towardsdatascience.com/create-a-web-app-in-under-thirty-minutes-with-streamlit-mongodb-and-heroku-41f211953786?source=rss—-7f60cf5620c9—4

Source: towardsdatascience.com