Skip to content

codingforentrepreneurs/Flask-Landing

Repository files navigation

Flask Landing Project

Flask Landing

Learn to build a landing page with the very popular Python Flask Microframework.

Lesson Code

This is what the code looks like at the end of the lesson. It's made for your reference so you can see a history of changes.

  1. Welcome & Requirements no code

  2. Walkthrough no code

  3. Create a Virtual Environment no code

  4. Sublime Text & Reactivate Virtual Environment

5 - Hello World with Flask

6 - WSGI for Local Dev

7 - URL Routing

8 - Flask App as Package

9 - Modules Driving One Purpose

10 - Render HTML Template

11 - Render Template Variables

12 - Keep Logic in Views not Templates

13 - Jinja Templates & Base HTML

14 - Render JSON

15 - Landing Page Form

16 - POST Method and Request Data

17 - Validation & CSRF

18 - Python eval

19 - Adding CSRF Protection to Flask

20 - A Form with Flask WTF

21 - Basic Form Validation with wtforms

22 - Email & Custom Validation with wtforms

23 - Render the Flask WTF Form in Template

24 - Input Class and Placeholder in Flask WTF Forms

25 - Setup a Database.

26 - Your First SQLAlchemy Model

27 - Save to Database

28 - Track Modification Error

29 - Database Actions in Flask Shell no code

30 - Convenience Methods for CRUD

31 - Saving Data to a Model via a Form

32 - Validation Form against Database with Model Lookup

33 - Database Object to Detail View

34 - First or 404

35 - Update View and Prefill Form Data

36 - Save Updates in Update View

37 - Exclude Items from SQLAlchemy Query

38 - Delete & Confirm

39 - List View and Redirects

40 - Navbar with Include

41 - Dynamic URL Paths with url_for

42 - url_for with Arguments

43 - Signals

44 - Change Models with Flask Migrate

45 - Fresh Migrate and DB

46 - Migrate Again

47 - Password Protect a View

48 - Prep Landing Page for Production

49 - Gunicorn Server

50 - Heroku and Live App

51 - Making Changes for Production

52 - Custom Domain

heroku domains:add

53 - Adding HTTPs using ACM

heroku ps:resize web=hobby

heroku certs:auto:enable

54 - Suggested Next Steps