fastapi-router-py

Crée des routeurs FastAPI avec des opérations CRUD, des dépendances d'authentification et des modèles de réponse appropriés. À utiliser lors de la création d'endpoints REST API, de nouvelles routes, de l'implémentation d'opérations CRUD, ou de l'ajout d'endpoints authentifiés dans des applications FastAPI.

npx skills add https://github.com/microsoft/skills --skill fastapi-router-py

Routeur FastAPI

Créez des routeurs FastAPI en suivant les patterns établis avec une authentification appropriée, des modèles de réponse et des codes de statut HTTP.

Démarrage rapide

Copiez le template depuis assets/template.py et remplacez les placeholders :

  • {{ResourceName}} → nom en PascalCase (ex. Project)
  • {{resource_name}} → nom en snake_case (ex. project)
  • {{resource_plural}} → forme plurielle (ex. projects)

Patterns d'authentification

# Auth optionnelle - retourne None si non authentifié
current_user: Optional[User] = Depends(get_current_user)

# Auth requise - lève 401 si non authentifié
current_user: User = Depends(get_current_user_required)

Modèles de réponse

@router.get("/items/{item_id}", response_model=Item)
async def get_item(item_id: str) -> Item:
    ...

@router.get("/items", response_model=list[Item])
async def list_items() -> list[Item]:
    ...

Codes de statut HTTP

@router.post("/items", status_code=status.HTTP_201_CREATED)
@router.delete("/items/{id}", status_code=status.HTTP_204_NO_CONTENT)

Étapes d'intégration

  1. Créez le routeur dans src/backend/app/routers/
  2. Montez-le dans src/backend/app/main.py
  3. Créez les modèles Pydantic correspondants
  4. Créez la couche service si nécessaire
  5. Ajoutez les fonctions API frontend

Skills similaires