FastAPI is one of the most exciting new web frameworks available today. It's captivating because it leverages modern Python language features like type hints, async and await, dataclasses, and much more. If you're building an API in Python, there are many choices, but FastAPI stands out as the clear choice for the future. This course will teach you everything you need to know to get started. We’ll build a realistic API with live data and deploy it to a cloud server Linux VM. Moreover, you will learn how to create proper HTML web pages to complement your API using FastAPI.
What Makes This Course Unique?
This course is designed to help you quickly create new APIs running in the cloud with FastAPI. We start with foundational concepts and quickly move to build our first API using FastAPI.
We'll explore core modern Python features, ensuring you are fully equipped to leverage this framework. You'll learn how async and await operates in Python, build self-validating classes with Pydantic, understand Python 3’s type hints, and other essential language concepts.
We conclude the course by building a realistic API working with live data and deploying it using nginx, gunicorn, and uvicorn on an Ubuntu cloud VM hosted at Digital Ocean.
Course Highlights
- Discover the simplicity of working with basic APIs in FastAPI.
- Create API methods handling common HTTP verbs (GET, POST, DELETE, etc.).
- Return JSON data to API clients seamlessly.
- Utilize async and await to develop truly scalable applications.
- Leverage Pydantic to define required and optional data exchanges.
- Enable FastAPI to automatically validate and convert data types (e.g., converting "2021-01-05" to a datetime).
- Organize your app efficiently using APIRoutes to structure your application across Python files.
- Return the most appropriate error responses (e.g., 400 Bad Request) to API clients.
- Deploy Python web applications in production-ready configurations on Linux environments.
- Understand the importance of using gunicorn and uvicorn together in production settings.
- And much more!