HOME > Development > The Flask Mega-Tutorial (Python Web Development)

The Flask Mega-Tutorial (Python Web Development)

  • Development
  • Mar 21, 2025
SynopsisThe Flask Mega-Tutorial (Python Web Development , available a...
The Flask Mega-Tutorial (Python Web Development)  No.1

The Flask Mega-Tutorial (Python Web Development), available at $74.99, has an average rating of 4.65, with 192 lectures, based on 451 reviews, and has 1992 subscribers.

You will learn about Write complete web applications using Python and Flask Accept user input through web forms Use relational databases Manage user logins and authentication Translate and localize application messages Implement a search engine Add JavaScript user-friendly features Application Programming Interfaces (APIs) Deploy your application on Linux servers or Docker containers Deploy your application on Heroku This course is ideal for individuals who are Beginner and intermediate Python developers interested in learning web development. It is particularly useful for Beginner and intermediate Python developers interested in learning web development.

Enroll now: The Flask Mega-Tutorial (Python Web Development)

Summary

Title: The Flask Mega-Tutorial (Python Web Development)

Price: $74.99

Average Rating: 4.65

Number of Lectures: 192

Number of Published Lectures: 192

Number of Curriculum Items: 192

Number of Published Curriculum Objects: 192

Original Price: $24.99

Quality Status: approved

Status: Live

What You Will Learn

  • Write complete web applications using Python and Flask
  • Accept user input through web forms
  • Use relational databases
  • Manage user logins and authentication
  • Translate and localize application messages
  • Implement a search engine
  • Add JavaScript user-friendly features
  • Application Programming Interfaces (APIs)
  • Deploy your application on Linux servers or Docker containers
  • Deploy your application on Heroku
  • Who Should Attend

  • Beginner and intermediate Python developers interested in learning web development.
  • Target Audiences

  • Beginner and intermediate Python developers interested in learning web development.
  • The Flask Mega-Tutorial is an overarching tutorial for Python beginner and intermediate developers that teaches web development with the Flask framework. The tutorial was born as a series of blog articles, and has been thoroughly revised, updated and expanded as a result of a successful Kickstarter campaign. The concepts that are covered go well beyond Flask, including a wide range of topics Python web developers need to know when writing their own applications.

    The goal of the course is to build a nicely featured social blogging web application. Chapter 1 begins with a very simple version of this application that has just a few lines of code. Then, each successive chapter adds a new feature to it. The 23 chapters in this course can be roughly split into two parts: the first 12 chapters are focused on basic web development concepts, while the remaining 11 chapters cover intermediate and advanced techniques. All the code featured in this tutorial is open source, and is available on GitHub. You are welcome to use any of it for your own projects!

    This edition of the tutorial includes over 11 hours of video showing how to perform all the steps in detail. For added context, the blog articles from where this tutorial originated are available on Miguel Grinberg’s blog.

    Important Note:The content in this tutorial was created in 2018 and revised in 2021, so you should expect minor issues due to changes in Python, Flask and other dependencies used. The blog version of this tutorial can be used as guidance to resolve problems.

    Course Curriculum

    Chapter 1: Hello, World!

    Lecture 1: Introduction

    Lecture 2: Installing Python

    Lecture 3: Installing Flask

    Lecture 4: A Hello World Flask Application

    Chapter 2: Templates

    Lecture 1: Introduction

    Lecture 2: What Are Templates?

    Lecture 3: Conditional Statements

    Lecture 4: Loops

    Lecture 5: Template Inheritance

    Chapter 3: Web Forms

    Lecture 1: Introduction

    Lecture 2: Introduction to Flask-WTF

    Lecture 3: User Login Form

    Lecture 4: Form Templates

    Lecture 5: Form Views

    Lecture 6: Receiving Form Data

    Lecture 7: Improving Field Validation

    Lecture 8: Generating Links

    Chapter 4: Database

    Lecture 1: Introduction

    Lecture 2: Databases In Flask

    Lecture 3: Database Migrations

    Lecture 4: Flask-SQLAlchemy Configuration

    Lecture 5: Database Models

    Lecture 6: Creating the Migration Repository

    Lecture 7: The First Database Migration

    Lecture 8: Database Upgrade and Downgrade Workflow

    Lecture 9: Database Relationships

    Lecture 10: Play Time

    Lecture 11: Shell Context

    Chapter 5: User Logins

    Lecture 1: Introduction

    Lecture 2: Password Hashing

    Lecture 3: Introduction to Flask-Login

    Lecture 4: Preparing the User Model for Flask-Login

    Lecture 5: User Loader Function

    Lecture 6: Logging Users In

    Lecture 7: Logging Users Out

    Lecture 8: Requiring Users to Log In

    Lecture 9: Showing the Logged In User in Templates

    Lecture 10: User Registration

    Chapter 6: Profile Page and Avatars

    Lecture 1: Introduction

    Lecture 2: User Profile Page

    Lecture 3: Avatars

    Lecture 4: Using Jinja2 Sub-Templates

    Lecture 5: More Interesting Profiles

    Lecture 6: Recording The Last Visit Time For a User

    Lecture 7: Profile Editor

    Chapter 7: Error Handling

    Lecture 1: Introduction

    Lecture 2: Error Handling in Flask

    Lecture 3: Debug Mode

    Lecture 4: Custom Error Pages

    Lecture 5: Sending Errors by Email

    Lecture 6: Logging to a File

    Lecture 7: Fixing the Duplicate Username Bug

    Chapter 8: Followers

    Lecture 1: Introduction

    Lecture 2: Database Relationships Revisited

    Lecture 3: Representing Followers

    Lecture 4: Database Model Representation

    Lecture 5: Adding and Removing follows

    Lecture 6: Obtaining the Posts from Followed Users

    Lecture 7: Combining Own and Followed Posts

    Lecture 8: Unit Testing the User Model

    Lecture 9: Integrating Followers with the Application

    Chapter 9: Pagination

    Lecture 1: Introduction

    Lecture 2: Submission of Blog Posts

    Lecture 3: Displaying Blog Posts

    Lecture 4: Making It Easier to Find Users to Follow

    Lecture 5: Pagination of Blog Posts

    Lecture 6: Page Navigation

    Lecture 7: Pagination in the User Profile Page

    Chapter 10: Email Support

    Lecture 1: Introduction

    Lecture 2: Introduction to Flask-Mail

    Lecture 3: Flask-Mail Usage

    Lecture 4: A Simple Email Framework

    Lecture 5: Request a Password Reset

    Lecture 6: Password Reset Tokens

    Lecture 7: Sending a Password Reset Email

    Lecture 8: Resetting a User Password

    Lecture 9: Asynchronous Emails

    Chapter 11: Facelift

    Lecture 1: Introduction

    Lecture 2: CSS Frameworks

    Lecture 3: Introducing Bootstrap

    Lecture 4: Using Flask-Bootstrap

    Lecture 5: Rendering Bootstrap Forms

    Lecture 6: Rendering of Blog Posts

    Lecture 7: Rendering Pagination Links

    Lecture 8: Before and After

    Chapter 12: Dates and Times

    Lecture 1: Introduction

    Lecture 2: Timezone Hell

    Lecture 3: Timezone Conversions

    Instructors

  • The Flask Mega-Tutorial (Python Web Development)  No.2
    Miguel Grinberg
    Software Engineer
  • Rating Distribution

  • 1 stars: 11 votes
  • 2 stars: 6 votes
  • 3 stars: 23 votes
  • 4 stars: 112 votes
  • 5 stars: 299 votes
  • Frequently Asked Questions

    How long do I have access to the course materials?

    You can view and review the lecture materials indefinitely, like an on-demand channel.

    Can I take my courses with me wherever I go?

    Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!