Home / File/ app.py — fastapi Source File

app.py — fastapi Source File

Architecture documentation for app.py, a python file in the fastapi codebase. 2 imports, 1 dependents.

File python FastAPI Routing 2 imports 1 dependents 2 functions 3 classes

Entity Profile

Dependency Diagram

graph LR
  b3b56d75_ddc4_d945_3098_c31a20a71af7["app.py"]
  534f6e44_61b8_3c38_8b89_6934a6df9802["__init__.py"]
  b3b56d75_ddc4_d945_3098_c31a20a71af7 --> 534f6e44_61b8_3c38_8b89_6934a6df9802
  6913fbd4_39df_d14b_44bb_522e99b65b90["pydantic"]
  b3b56d75_ddc4_d945_3098_c31a20a71af7 --> 6913fbd4_39df_d14b_44bb_522e99b65b90
  60353b9a_5a64_e1e9_2103_e81e091924ef["test_validate_response_recursive.py"]
  60353b9a_5a64_e1e9_2103_e81e091924ef --> b3b56d75_ddc4_d945_3098_c31a20a71af7
  style b3b56d75_ddc4_d945_3098_c31a20a71af7 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

from fastapi import FastAPI
from pydantic import BaseModel

app = FastAPI()


class RecursiveItem(BaseModel):
    sub_items: list["RecursiveItem"] = []
    name: str


class RecursiveSubitemInSubmodel(BaseModel):
    sub_items2: list["RecursiveItemViaSubmodel"] = []
    name: str


class RecursiveItemViaSubmodel(BaseModel):
    sub_items1: list[RecursiveSubitemInSubmodel] = []
    name: str


RecursiveItem.model_rebuild()
RecursiveSubitemInSubmodel.model_rebuild()
RecursiveItemViaSubmodel.model_rebuild()


@app.get("/items/recursive", response_model=RecursiveItem)
def get_recursive():
    return {"name": "item", "sub_items": [{"name": "subitem", "sub_items": []}]}


@app.get("/items/recursive-submodel", response_model=RecursiveItemViaSubmodel)
def get_recursive_submodel():
    return {
        "name": "item",
        "sub_items1": [
            {
                "name": "subitem",
                "sub_items2": [
                    {
                        "name": "subsubitem",
                        "sub_items1": [{"name": "subsubsubitem", "sub_items2": []}],
                    }
                ],
            }
        ],
    }

Domain

Subdomains

Dependencies

Frequently Asked Questions

What does app.py do?
app.py is a source file in the fastapi codebase, written in python. It belongs to the FastAPI domain, Routing subdomain.
What functions are defined in app.py?
app.py defines 2 function(s): get_recursive, get_recursive_submodel.
What does app.py depend on?
app.py imports 2 module(s): __init__.py, pydantic.
What files import app.py?
app.py is imported by 1 file(s): test_validate_response_recursive.py.
Where is app.py in the architecture?
app.py is located at tests/test_validate_response_recursive/app.py (domain: FastAPI, subdomain: Routing, directory: tests/test_validate_response_recursive).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free