FastAPI: Python API Development With Light Speed

Learning PathSkills: FastAPI, REST APIs, Web Development, Jinja2

FastAPI lets you build Python web APIs quickly using standard type hints for automatic validation, serialization, and interactive documentation. This learning path takes you from your first endpoint to a complete web application.

By completing this path, you’ll be able to:

  • Create REST API endpoints with automatic request validation
  • Build a fully featured API application with data models and CRUD operations
  • Serve dynamic web pages using Jinja2 templates
  • Build and structure a complete URL shortener project

This path is for Python developers who want to build web APIs and applications with a modern, high-performance framework. You should be comfortable with Python basics and type hints.

You’ll start by creating your first endpoints, then build a complete REST API before moving on to HTML page rendering and a hands-on project.

FastAPI: Python API Development With Light Speed

Learning Path ⋅ 5 Resources

Getting Started With FastAPI

Get up and running with FastAPI. You’ll create your first endpoints, work with path parameters, and see how FastAPI uses Python type hints to generate interactive API documentation automatically.

Course

Start Building With FastAPI

Learn how to build APIs with FastAPI in Python, including Pydantic models, HTTP methods, CRUD operations, and interactive documentation.

Interactive Quiz

Get Started With FastAPI

Building REST APIs

Build a fully featured REST API with FastAPI. You’ll handle request validation with Pydantic models, manage CRUD operations, and structure a real-world API application.

Tutorial

A Close Look at a FastAPI Example Application

Set up an example FastAPI app, add path and query parameters, and handle CRUD operations with Pydantic for clean, validated endpoints.

Serving Web Pages

FastAPI can serve more than JSON responses. Learn how to render dynamic HTML pages by integrating Jinja2 templates into your FastAPI application.

Tutorial

How to Serve a Website With FastAPI Using HTML and Jinja2

Use FastAPI to render Jinja2 templates and serve dynamic sites with HTML, CSS, and JavaScript, then add a color picker that copies hex codes.

Build a Project

Apply what you’ve learned by building a URL shortener from scratch. You’ll design the API, connect a database, and create a complete working web application with FastAPI.

Course

Building a URL Shortener With FastAPI and Python

In this video course, you'll build an app to create and manage shortened URLs. Your Python URL shortener can receive a full target URL and return a shortened URL. You'll also use the automatically created documentation of FastAPI to try out your API endpoints.

Test Your Knowledge

You’ve made it through the entire path! In the wrap-up quiz below, you’ll revisit the most important ideas about routing, request handling, Pydantic validation, async endpoints, CORS, and serving HTML with Jinja2. Use it to spot any topics that still feel rusty before moving on.

Interactive Quiz

FastAPI: Python API Development With Light Speed

Test your FastAPI skills across REST APIs, Pydantic models, async endpoints, Jinja2 templates, and more in this learning path wrap-up quiz.

Congratulations on completing this learning path! You can now build REST APIs, serve templated web pages, and create complete web applications with FastAPI in Python.

You might also be interested in these related learning paths:

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