Learning Flask
4.0 (10 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
116 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Learning Flask to your Wishlist.

Add to Wishlist

Learning Flask

Get started with Flask, a powerful web framework for Python that's easy to learn and use
4.0 (10 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
116 students enrolled
Created by Packt Publishing
Last updated 10/2015
Current price: $12 Original price: $75 Discount: 84% off
4 days left at this price!
30-Day Money-Back Guarantee
  • 1.5 hours on-demand video
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion

Training 5 or more people?

Get your team access to Udemy's top 2,000 courses anytime, anywhere.

Try Udemy for Business
What Will I Learn?
  • Set up a development environment with all the necessary software to develop Flask apps
  • Create robust databases with PostgreSQL to safely store user data for your dynamic websites
  • Build an authentication and authorization system using Flask-Login and Flask-Oauth to protect your pages from improper access
  • Use Flask extensions such as Flask-Gravatar, Flask SSLify, and more to add a wide range of functionalities to your app
  • Integrate the Wikipedia API to build a location-based service
View Curriculum
  • Some basic familiarity with Python will help you understand the code more easily.

With a growing skills gap, the need for talented developers is greater than ever before. A basic grounding in building apps with a framework as minimalistic, powerful, and easy-to-learn as Flask will be a useful skill to launch you on a career as an entrepreneur or web developer. Flask is a Python micro-framework that makes web application development as easy as saying it.

This course will give you a basic grounding in the fundamental concepts of web development, as well as the hands-on experience you require to successfully build web apps with Flask.

We'll start by turning your computer into a modern development machine. Next, we'll move beyond static websites and develop a powerful database-backed dynamic Flask app. We won't stop there, because we'll also cover how to implement a full authentication system.

Finally, we'll extend the app's functionality by learning how to integrate it with third-party APIs.

When you finish this course, you will be fully equipped to build your very own custom web apps.

About the Author

Lalith Polepeddi has been working with Flask since discovering it to be an easy way to learn about web development. He's written about Flask for Tuts+ and TechPro. Aside from Flask, Lalith is interested in applying computer science to address problems in parallel domains, such as biology.

Who is the target audience?
  • This video course is for new developers who want to explore Flask and build custom web applications quickly and easily.
Compare to Other Flask Courses
Curriculum For This Course
38 Lectures
Setting Up the Environment
8 Lectures 13:42

This video will offer the overview of the course.

The Course Overview

Before we start, we will need a text editor to edit our code.

Text Editor

We will need a command-line interface for communication with the system.

Command-line Interface

To handle our project efficiently, we need a version control system.

Version Control

We will need to install a database in order to save our app's data.


We will need to install a virtual environment where we can install Flask.


To make our app available to users, we need to create a deployment environment.


A review of the tools installed.

Getting Started
10 Lectures 20:38

Setting up the folders and files needed for a Flask app.

Preview 02:03

Taking a look at how the files and folders together form the project structure.

The Request-Response Cycle

To understand the Request-Response cycle, we will implement a static page.

Creating a Home Page

To write less boilerplate, we will use web templates.

Making Templates

To actually see the home page, we will implement a controller.


To style the HTML, we will need CSS.

Using Static Files

To back up our code, we will need to push it to GitHub.

Saving to GitHub

To view the app, we will deploy the code to Heroku.

Deploying to Heroku

To practice the repeatable workflow, from creating a home page to deploying it to Heroku again, we will implement another static page.

Creating an About Page

We will put the process from creating a home page to saving it to Github into context.

Storing Data
3 Lectures 09:57

Creating a "users" table in the "learningflask" database.

Preview 05:08

Connecting the Flask app to Postgres using Flask-SQLAlchemy.

Connecting Flask to Postgres

Creating a User model to communicate with the "users" table.

Writing the User Model
Signing Up
6 Lectures 19:54

To make web forms, we need to use Flask-WTF.

Preview 02:09

Writing the form's backend using Flask-WTF.

Creating a Form

Writing the form's frontend in a web template.

Rendering a Form

To check for incorrectly submitted form data, we will use validators.

Validating Form Data - Part 1

Getting more practice in writing validators.

Validating Form Data - Part 2

If the form data is valid, we need to save it in the users table.

Saving a New User
Logging In and Logging Out
3 Lectures 11:27

In this video, we will talk about sessions that are very important to sign a user in.

Preview 03:33

The sign in form allows users to sign in to the app using their credentials. In this video, we'll write the sign in form's backend and frontend.

Sign In

Signing out essentially means ending a session. In this video, we'll take a look at how to do this.

Sign Out
Authorization/User Roles
3 Lectures 06:51

The app we have created still has two flaws with regard to security. In this video, we'll take a look at these issues.

Preview 02:16

In our app, users can still access the home page without logging in. In this video, we'll see how to avoid this.

Protecting the Home Page

Once logged in, the signup page is still visible to the users. In this video, we'll solve this issue.

Protecting the Signup and Login Pages
Bookmarking Places
5 Lectures 14:59

We'll take a look at how to implement the location-based feature of the app.

Preview 01:54

We'll add an address form to our home page.

Adding a Form

We'll take a look at how to query an address in order to find places near it.

Querying for Places

In this video, we'll render the places we need on the map.

Rendering Places

In this video, we'll be wrapping and concluding our course.

About the Instructor
Packt Publishing
3.9 Average rating
8,274 Reviews
59,197 Students
687 Courses
Tech Knowledge in Motion

Packt has been committed to developer learning since 2004. A lot has changed in software since then - but Packt has remained responsive to these changes, continuing to look forward at the trends and tools defining the way we work and live. And how to put them to work.

With an extensive library of content - more than 4000 books and video courses -Packt's mission is to help developers stay relevant in a rapidly changing world. From new web frameworks and programming languages, to cutting edge data analytics, and DevOps, Packt takes software professionals in every field to what's important to them now.

From skills that will help you to develop and future proof your career to immediate solutions to every day tech challenges, Packt is a go-to resource to make you a better, smarter developer.

Packt Udemy courses continue this tradition, bringing you comprehensive yet concise video courses straight from the experts.