0
0
FastAPIframework~30 mins

ASGI and async-first architecture in FastAPI - Mini Project: Build & Apply

Choose your learning style9 modes available
Building an Async API with FastAPI and ASGI
📖 Scenario: You are creating a simple web API that returns user data. The API should be fast and able to handle many requests at the same time without waiting. This is important for real-world apps like chat apps or live dashboards.
🎯 Goal: Build a FastAPI app that uses async functions to handle requests. You will create user data, configure a simple setting, write an async route to return users, and complete the app setup to run with ASGI.
📋 What You'll Learn
Create a dictionary called users with exact user data
Add a variable max_users to limit returned users
Write an async function get_users that returns users up to max_users
Complete the FastAPI app setup with correct import and app instance
💡 Why This Matters
🌍 Real World
Many modern web apps need to handle many users at once without slowing down. Using async functions with FastAPI and ASGI lets servers handle many requests efficiently, like chat apps or live data feeds.
💼 Career
Understanding async-first architecture and ASGI is key for backend developers working with Python web frameworks like FastAPI. It helps build fast, scalable APIs used in startups and large companies.
Progress0 / 4 steps
1
Create the user data dictionary
Create a dictionary called users with these exact entries: 1: 'Alice', 2: 'Bob', 3: 'Charlie', 4: 'Diana'.
FastAPI
Need a hint?

Use curly braces to create a dictionary with keys as numbers and values as strings.

2
Add a max_users configuration variable
Add a variable called max_users and set it to 3 to limit how many users the API will return.
FastAPI
Need a hint?

Just create a simple variable with the number 3.

3
Write an async function to get limited users
Write an async function called get_users that returns a dictionary of users limited to max_users. Use async def get_users() and return a dictionary with the first max_users items from users.
FastAPI
Need a hint?

Use dictionary comprehension inside the async function to select only the first max_users users.

4
Complete the FastAPI app setup with async route
Import FastAPI from fastapi, create an app instance called app, and add an async route @app.get('/users') that calls get_users and returns its result.
FastAPI
Need a hint?

Remember to use await when calling the async function inside the route.