Web Developer Bootcamp with Flask and Python in 2022

19h 57m 43s
English
Paid

Course description

Welcome to the Web Developer Bootcamp with Flask and Python! In this course, you'll learn how to build and deploy dynamic websites using Python, Flask, MongoDB, HTML, and CSS! If you want to share your projects online and become a full stack web developer, you're in the right place! I will teach you the latest and most popular technologies, including Python 3.10, Flask, HTML 5, and CSS 3. I won't teach you jQuery or Bootstrap since those are old technologies!

Read more about the course

Instead, I focus on giving you a solid HTML and CSS foundation, so that you can be truly independent, and build anything you want.

I'll help you write many real-world projects that test your skills and build your understanding. By the end of the course, you'll be able to design and code any feature on any website!

This course beats attending any live bootcamp or workshop because I've put hundreds of hours into planning, recording, and editing. Plus you get lifetime access, and I provide outstanding support—I answer dozens of questions every day!

Why learn Flask?

Flask is a microframework for web development, written in Python.

It's lightweight and simple, so you can start using it straight away. As you go through the course and learn more about it, you'll realize it's also really powerful!

Flask provides everything we need for building websites: a good way to organize our apps, helpers for user authentication, a large selection of plugins and extensions to do dozens of other things, and much more!

What you'll learn!

Here's an overview of what you'll learn in this course:

  • A super-strong HTML 5 and CSS 3 foundation

  • How to plan your software projects and make them successful

  • Design websites using design software like Figma

  • Semantic HTML, and how to code in HTML like a professional

  • Build backend applications with Flask and Python

  • Make your HTML websites dynamic with Flask and Jinja2

  • Become a CSS professional: learn about flex, grid, CSS animations, and much more

  • Store and retrieve data with MongoDB on the Cloud

  • Deploy your web applications (using both free and paid solutions)

  • Implement user authentication on your Python and Flask websites

  • Much, much more!

  • But most importantly, learn to code from a professional software developer, and like a professional software developer

I won't cover JavaScript in detail, but that's because you just don't need it! With HTML, CSS, and a backend (written with Flask and Python) you can do almost anything your users want. Later on, you can always learn JavaScript for extra functionality. Trying to learn JavaScript and Python together leads to problems, and everything becomes a bit more difficult than it has to be.

If you already know a little bit about programming (with Python or any other language), you're ready to start this course! Also, I've included a complete Python Refresher section to help you get up to speed with Python if you don't know it well already.

Watch Online

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 171 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing

Watch Online Web Developer Bootcamp with Flask and Python in 2022

0:00
/
#1: Welcome to the course!

All Course Lessons (171)

#Lesson TitleDurationAccess
1
Welcome to the course! Demo
03:27
2
Curriculum overview
02:05
3
Introduction to this section
01:02
4
Variables in Python
08:27
5
String formatting in Python
06:27
6
Getting user input
05:17
7
Writing our first Python app
03:20
8
Lists, tuples and sets
06:32
9
Advanced set operations
04:40
10
Booleans in Python
05:01
11
If statements
08:18
12
The "in" keyword in Python
02:03
13
If statements with the "in" keyword
08:19
14
Loops in Python
11:08
15
List comprehensions in Python
07:25
16
Dictionaries
08:32
17
Destructuring variables
08:29
18
Functions in Python
10:42
19
Function arguments and parameters
07:41
20
Default parameter values
03:55
21
Functions returning values
07:20
22
Lambda functions in Python
07:53
23
Dictionary comprehensions
04:02
24
Unpacking arguments
10:25
25
Unpacking keyword arguments
08:45
26
Object-Oriented Programming in Python
15:53
27
Magic methods: __str__ and __repr__
06:26
28
@classmethod and @staticmethod
14:04
29
Class inheritance
08:33
30
Class composition
06:09
31
Type hinting in Python 3.5+
05:09
32
Imports in Python
09:34
33
Relative imports in Python
08:54
34
Errors in Python
12:48
35
Custom error classes
05:05
36
First-class functions
07:53
37
Simple decorators in Python
07:13
38
The 'at' syntax for decorators
03:34
39
Decorating functions with parameters
02:25
40
Decorators with parameters
04:51
41
Mutability in Python
06:04
42
Mutable default parameters (and why they're a bad idea)
04:28
43
How do websites and the internet work?
04:51
44
Front end vs. Back end development
02:16
45
Key web technologies: HTML, CSS, and JavaScript
02:59
46
The Browser Inspector: using the developer tools
06:27
47
Elements: the basic components of HTML
03:08
48
A full example: HTML and CSS
10:53
49
Some of the most common HTML elements
05:20
50
What are HTML content categories?
05:29
51
Nesting elements in HTML
05:50
52
Starting our first HTML project
03:57
53
Which HTML elements can't be nested?
02:14
54
An overview of HTML container elements
06:15
55
A detailed look at HTML attributes
06:09
56
Adding images to our project
04:47
57
What is semantic HTML?
05:40
58
Document-level annotations in HTML
05:51
59
Completing our HTML project with document-level annotations
03:06
60
The best HTML resource: MDN
02:05
61
How to link a CSS file
04:45
62
Basic CSS selectors: targeting specific elements
08:13
63
How colours work: RGB, Hexadecimal, and HSL
05:54
64
Colours in CSS: text and background
06:40
65
Starting to write our project's CSS file
06:13
66
Inheritance in CSS
05:44
67
What properties can't be inherited?
06:40
68
The CSS Box Model
05:27
69
Overview of CSS units
03:46
70
Working with spacing in our project
04:55
71
Descendent selectors in CSS
07:11
72
What is specificity in CSS?
07:37
73
BEM: a simpler approach to CSS targeting
14:43
74
Overview of this section's project
03:30
75
From our YouTube channel: How to start a new software project
11:56
76
Step 1: becoming a user
05:51
77
Step 2: populating the backlog
05:56
78
Step 3: wireframing or rough design
02:07
79
Step 4: pixel perfect design
18:00
80
Step 5: creating the page structure
05:03
81
Step 6: coding the page structure with HTML
04:44
82
What are SVGs?
03:01
83
How to include images in our HTML site
03:07
84
Finishing the header and navigation
03:42
85
HTML forms: sending data
05:41
86
HTML forms: working with textareas
03:12
87
Creating the footer with multiple columns
03:34
88
How to style the header and menu bar
10:54
89
Setting the font family in our project
00:40
90
How to style HTML forms and inputs
07:55
91
How to style the micro blog entries
03:33
92
How to style the page footer
06:38
93
"Hello, world" with Flask
08:01
94
Using render_template to send longer HTML strings
04:36
95
What is Jinja2?
05:37
96
Jinja2 Expressions
08:21
97
Working with data structures in Jinja2
06:38
98
Conditional statements in Jinja2
05:24
99
Using loops in Jinja2
06:09
100
Setting up our Microblog project with Flask
06:41
101
Receiving form data using Flask
06:27
102
Displaying past entries in the Microblog project
04:36
103
Formatting dates correctly in our entries
03:08
104
Introduction to MongoDB
06:49
105
Accessing MongoDB with Compass and Atlas
09:14
106
Storing Microblog entries in MongoDB
06:35
107
Retrieving the Microblog entries from MongoDB
03:08
108
How to use Flask's app factory pattern
02:49
109
What is the requirements.txt file?
03:52
110
What is Heroku?
09:56
111
The end result of this section: a fully deployed app
01:27
112
Getting our app ready for Heroku
04:59
113
Deploying our app to Heroku
09:37
114
Hiding the MongoDB connection details from our code
09:37
115
Defining Jinja variables using the 'set' keyword
04:13
116
Jinja filters to call inline functions using the pipe operator
02:53
117
Jinja macros to improve reusability and remove duplication
07:32
118
Jinja inheritance using 'extends' and 'block'
07:05
119
How to use CSS style tags with inheritance
05:49
120
Handling CSS in larger apps with inheritance
05:26
121
Jinja tests using the 'is' keyword
06:45
122
The Jinja Environment and Rendering Context
05:52
123
Routing with Jinja using url_for in your templates
07:40
124
Habit tracker project overview
01:53
125
Displaying and saving habits
14:00
126
Styling the habit tracker
11:24
127
Adding date navigation
14:05
128
Styling the date navigation
07:20
129
Completing habits
15:30
130
Adding Flask blueprints
07:25
131
Using MongoDB in the habit tracker
16:19
132
Deploying our app to Heroku
08:07
133
Jinja Includes with the include keyword
13:37
134
Whitespace control in Jinja
04:30
135
Jinja escaping and unescaping
03:00
136
The call block for Jinja macros
05:16
137
Portfolio Project Overview
02:00
138
Making our Flask app for this project
05:14
139
The base template and nav bar
08:01
140
Adding an about page to our Flask app
03:17
141
Adding a contact page to our Flask app
07:19
142
Introduction to CSS Grid
12:44
143
Media queries with CSS for responsive development
04:34
144
Displaying projects in the homepage using CSS Grid
22:10
145
Creating the individual project pages
19:39
146
Error handling with Flask using app.errorhandler
04:14
147
What are cookies? What are sessions?
08:39
148
Registering users in your Flask apps
11:28
149
Logging users in with Flask
07:42
150
Password hashing (or encryption) with passlib
09:18
151
Creating a 'login required' decorator
07:05
152
Project overview and CSS variables
15:18
153
Adding a nav bar
15:22
154
Adding a footer
01:05
155
Putting the page layout together
02:57
156
How to toggle dark mode in a Flask app
09:54
157
Create a form with WTForms
07:04
158
Render a WTForm in our template
18:29
159
Receive and validate data using WTForms
14:00
160
Displaying a table of all movies
11:17
161
Creating the movie details page
10:07
162
Setting movie ratings
12:34
163
Set the last watched date
03:23
164
Create a custom WTForm Widget
07:05
165
Editing movies and pre-populating a form
07:24
166
Add user signups to a Flask app
09:47
167
Add user logins to a Flask app
09:43
168
Personalize pages based on the logged in user
08:12
169
Add user logouts to a Flask app
02:24
170
Deploy our Flask app to Heroku
08:54
171
Concurrency in Heroku with gunicorn
05:31

Unlock unlimited learning

Get instant access to all 170 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

Python & LeetCode | The Ultimate Interview BootCamp

Python & LeetCode | The Ultimate Interview BootCamp

Sources: kaeducation.com
I know LeetCode questions are meant to be difficult, but do not worry! I made it a priority to present each problem in the most simplistic and direct way possible. You will bene...
8 hours 35 minutes 33 seconds
The Ultimate HTML5 & CSS3 Series: Part 1

The Ultimate HTML5 & CSS3 Series: Part 1

Sources: codewithmosh (Mosh Hamedani)
Have you always wanted to learn web development but didn't know where to start? Tired of lengthy, boring and outdated courses? This course is for you. A fun...
2 hours 51 minutes 50 seconds
Wizard zines. Zine 14 pack

Wizard zines. Zine 14 pack

Sources: Julia Evans
Wizard zines is a little different from other tech publications. Here’s my approach: stick to fundamentals: wizard zines focuses on fundamentals: things that...
Flexbox Simplified

Flexbox Simplified

Sources: kevin powell
Flexbox is a wonderful tool that opens up the world of responsive layouts, but it can be hard to predict exactly what's going to happen when we use it, and it's full of sometime...
4 hours 41 minutes 57 seconds