Ready to Start Learning?

Sign in to check if you already have access, or get started with a purchase or membership.

Flask Landing

Learn to build a landing page with the very popular Python Flask Microframework.
Check out how minimal Flask can be:
python
from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"
That is an entire 1-page web app. All you have to do is fire up gunicorn on Heroku and you've got a 1-page app with very little overhead. Sweet.
The goal of this series is to take this a bit further so we can build and deploy a functional landing page.
Flask Landing

Lifetime access to this course

or get access to 500+ courses with a membership

Lessons

1

Welcome & Requirements

0:57

2

Walkthrough

5:37

3

Create a Virtual Environment

2:59

4

Sublime Text & Reactivate Virtual Environment

2:14

5

Hello World with Flask

4:59

6

WSGI for Local Dev

2:52

7

URL Routing

3:50

8

Flask App as a Package

4:29

9

Modules Driving One Purpose

5:13

10

Render HTML Template

2:45

11

Render Template Variables

3:26

12

Keep Logic in Views not Templates

4:11

13

Jinja Templates & Base HTML

6:57

14

Render JSON

4:53

15

Landing Page Form

5:47

16

POST Method and Request Data

2:28

17

Validation & CSRF

5:18

18

Python eval

1:47

19

Adding CSRF Protection to Flask

4:23

20

A Form with Flask WTF

4:19

21

Basic Form Validation with wtforms

4:44

22

Email & Custom Validation with wtforms

2:54

23

Render the Flask WTF Form in Template

3:04

24

Input Class and Placeholder in Flask WTF Forms

2:42

25

Setup a Database

5:29

26

Your First SQLAlchemy Model

5:20

27

Save to Database

3:55

28

Track Modification Error

2:31

29

Database Actions in Flask Shell

10:19

30

Convenience Methods for CRUD

6:56

31

Saving Data to a Model via a Form

2:59

32

Validation Form against Database with Model Lookup

4:08

33

Database Object to Detail View

7:13

34

First or 404

1:32

35

Update View and Prefill Form Data

4:33

36

Save Updates in Update View

6:13

37

Exclude Items from SQLAlchemy Query

3:32

38

Delete & Confirm

3:44

39

List View and Redirects

3:54

40

Navbar with Include

2:20

41

Dynamic URL Paths with url_for

3:15

42

url_for with Arguments

3:17

43

Signals

7:39

44

Change Models with Flask Migrate

5:27

45

Fresh Migrate and DB

2:19

46

Migrate Again

7:37

47

Password Protect a View

7:15

48

Prep Landing Page for Production

4:36

49

Gunicorn Server

2:07

50

Heroku and Live App

9:49

51

Making Changes for Production

5:12

52

Custom Domain

1:52

53

Adding HTTPs using ACM

3:07

54

Suggested Next Steps

3:36

55

Thank you

0:47