Become a Python Web Developer

Learning PathSkills: Web Development, Django, Flask, APIs

Web Development Tutorials Artwork

This learning path will provide you with the foundational skills you need to become a Python web developer. You’ll cover the most popular Python web development frameworks like Django and Flask, working with databases, as well as fundamental front-end coding skills like HTML.

Become a Python Web Developer

Learning Path ⋅ 14 Resources

Title image for Get Started With Django: Build a Portfolio App (Get Started With Django Part 1: Build a Portfolio App)

Course

Get Started With Django: Build a Portfolio App

Learn the basics of creating powerful web applications with Django, a Python web framework. You'll build a portfolio website to showcase your web development projects, complete with a fully functioning blog.

Title image for Django Migrations 101 (Django Migrations: A Primer)

Course

Django Migrations 101

With this course you’ll get comfortable with Django migrations and learn how to create database tables without writing any SQL, how to automatically modify your database after you changed your models, and how to revert changes made to your database.

Title image for Digging Deeper Into Django Migrations (Django Migrations: A Primer)

Tutorial

Digging Deeper Into Django Migrations

In this step-by-step Python tutorial, you'll not only take a closer look at the new Django migrations system that is integrated into Django but also walk through the migration files themselves.

Title image for Make a Location-Based Web App With Django and GeoDjango (Make a Location-Based Web App With Django and GeoDjango)

Course

Make a Location-Based Web App With Django and GeoDjango

Learn how to use Django and GeoDjango to build a location-based web application from scratch. You’ll be building a simple nearby shops application that lists the shops closest to a user’s location.

Title image for Django Redirects (Django Redirects Tutorial)

Course

Django Redirects

Learn everything you need to know about HTTP redirects in Django. All the way from the low-level details of the HTTP protocol to the high-level way of dealing with them in Django.

Title image for Working With JSON Data in Python (Working With JSON Data in Python)

Course

Working With JSON Data in Python

Learn how to work with Python's built-in json module to serialize the data in your programs into JSON format. Then, you'll deserialize some JSON from an online API and convert it into Python objects.

Title image for Building HTTP APIs With Django REST Framework (Python Django Tutorials Artwork)

Course

Building HTTP APIs With Django REST Framework

This course will get you ready to build HTTP APIs with Django REST Framework. The Django REST framework (DRF) is a toolkit built on top of the Django web framework that reduces the amount of code you need to write to create REST interfaces.

Title image for Python REST APIs With Flask, Connexion, and SQLAlchemy – Part 1 (Python REST APIs With Flask, Connexion, and SQLAlchemy – Part 1)

Tutorial

Python REST APIs With Flask, Connexion, and SQLAlchemy – Part 1

In this three-part tutorial series, you'll create a RESTful API from scratch to keep track of people and notes using the Flask web framework. You'll also test your API with Swagger UI API documentation. In part one, you'll build the foundation of your note-keeping app.

Title image for Python REST APIs With Flask, Connexion, and SQLAlchemy – Part 2 (Python REST APIs With Flask, Connexion, and SQLAlchemy – Part 2)

Tutorial

Python REST APIs With Flask, Connexion, and SQLAlchemy – Part 2

In this three-part tutorial series, you'll create a RESTful API from scratch to keep track of people and notes using the Flask web framework. You'll also test your API with Swagger UI API documentation. In part two, you'll implement a SQLite database to store your data permanently.

Title image for Python REST APIs With Flask, Connexion, and SQLAlchemy – Part 3 (Python REST APIs With Flask, Connexion, and SQLAlchemy – Part 3)

Tutorial

Python REST APIs With Flask, Connexion, and SQLAlchemy – Part 3

In this three-part tutorial series, you'll create a RESTful API from scratch to keep track of people and notes using the Flask web framework. You'll also test your API with Swagger UI API documentation. In part three, you'll use SQLAlchemy to provide the functionality to add notes to a person.

Title image for Build a JavaScript Front End for a Flask API (Build a JavaScript Front End for a Flask API)

Tutorial

Build a JavaScript Front End for a Flask API

Most modern websites are powered by a REST API. That way, you can separate the front-end code from the back-end logic, and users can interact with the interface dynamically. In this step-by-step tutorial, you'll learn how to build a single-page Flask web application with HTML, CSS, and JavaScript.

Title image for Sending Emails With Python (Sending Emails With Python)

Course

Sending Emails With Python

Learn how to send emails using Python. Find out how to send plain-text and HTML messages, add files as attachments, and send personalized emails to multiple people. Later on you'll build a CSV-powered email sending script from scratch.

Title image for What You Need to Know to Manage Users in Django Admin (What You Need to Know to Manage Users in Django Admin)

Tutorial

What You Need to Know to Manage Users in Django Admin

Learn what you need to know to manage users in Django admin. Out of the box, Django admin doesn't enforce special restrictions on the user admin. This can lead to dangerous scenarios that might compromise your system.

Title image for Django Admin Customization (Customize the Django Admin With Python)

Course

Django Admin Customization

Learn how to customize Django's admin with Python. You'll use AdminModel objects to add display columns, calculate values, link to referring objects, and search and filter results. You'll also use template overriding to gain full control over the admin's HTML.

Got feedback on this learning path?

Looking for real-time conversation? Visit the Real Python Community Chat or join the next “Office Hours” Live Q&A Session. Happy Pythoning!

« Browse All Learning Paths