← ClaudeAtlas

fastapilisted

FastAPI best practices + Pydantic. Use when building or reviewing FastAPI APIs.
martineserios/thebrana · ★ 3 · API & Backend · score 66
Install: claude install-skill martineserios/thebrana
# FastAPI Official FastAPI skill to write code with best practices, keeping up to date with new versions and features. ## Use the `fastapi` CLI Run the development server on localhost with reload: ```bash fastapi dev ``` Run the production server: ```bash fastapi run ``` ### Add an entrypoint in `pyproject.toml` FastAPI CLI will read the entrypoint in `pyproject.toml` to know where the FastAPI app is declared. ```toml [tool.fastapi] entrypoint = "my_app.main:app" ``` ### Use `fastapi` with a path When adding the entrypoint to `pyproject.toml` is not possible, or the user explicitly asks not to, or it's running an independent small app, you can pass the app file path to the `fastapi` command: ```bash fastapi dev my_app/main.py ``` Prefer to set the entrypoint in `pyproject.toml` when possible. ## Use `Annotated` Always prefer the `Annotated` style for parameter and dependency declarations. It keeps the function signatures working in other contexts, respects the types, allows reusability. ### In Parameter Declarations Use `Annotated` for parameter declarations, including `Path`, `Query`, `Header`, etc.: ```python from typing import Annotated from fastapi import FastAPI, Path, Query app = FastAPI() @app.get("/items/{item_id}") async def read_item( item_id: Annotated[int, Path(ge=1, description="The item ID")], q: Annotated[str | None, Query(max_length=50)] = None, ): return {"message": "Hello World"} ``` instead of: ```python # DO NOT DO THI