fastapi-expert
Use when building high-performance async Python APIs with FastAPI and Pydantic V2.
Skill by https://github.com/Jeffallan
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/srscorpio-fastapi-expert
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: backend
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions: not checked yet.
What's inside
- Skill name
fastapi-expert- Description
- Use when building high-performance async Python APIs with FastAPI and Pydantic V2. Invoke to create REST endpoints, define Pydantic models, implement authentication flows, set up async SQLAlchemy database operations, add JWT authentication, build WebSocket endpoints, or generate OpenAPI documentation. Trigger terms: FastAPI, Pydantic, async Python, Python API, REST API Python, SQLAlchemy async, JWT authentication, OpenAPI, Swagger Python.
- License
- MIT
- Metadata
- role: specialist · scope: implementation · author: https://github.com/Jeffallan · domain: backend · version: 1.1.0 · triggers: FastAPI, Pydantic, async Python, Python API, REST API Python, SQLAlchemy async, JWT authentication, OpenAPI, Swagger Python · output-format: code · related-skills: fullstack-guardian, django-expert, test-master
- Instructions
- 174 lines in SKILL.md · view on GitHub
Files (7)
- SKILL.md
- async-sqlalchemy.md · references/
- authentication.md · references/
- endpoints-routing.md · references/
- migration-from-django.md · references/
- pydantic-v2.md · references/
- testing-async.md · references/
SKILL.md (first lines)
# FastAPI Expert
Deep expertise in async Python, Pydantic V2, and production-grade API development with FastAPI.
## When to Use This Skill
- Building REST APIs with FastAPI
- Implementing Pydantic V2 validation schemas
- Setting up async database operations
- Implementing JWT authentication/authorization
- Creating WebSocket endpoints
- Optimizing API performance
## Core Workflow
1. **Analyze requirements** — Identify endpoints, data models, auth needs
2. **Design schemas** — Create Pydantic V2 models for validation
3. **Implement** — Write async endpoints with proper dependency injection
4. **Secure** — Add authentication, authorization, rate limiting
5. **Test** — Write async tests with pytest and httpx; run `pytest` after each endpoint group and verify OpenAPI docs at `/docs`
> **Checkpoint after each step:** confirm schemas validate correctly, endpoints return expected HTTP status codes, and `/docs` reflects the intended API surface before proceeding.
## Minimal Complete Example
Schema + endpoint + dependency injection in one cohesive unit:
```python
# schemas.py
from pydantic import BaseModel, EmailStr, field_validator, model_config
class UserCreate(BaseModel):
model_config = model_config(str_strip_whitespace=True)
email: EmailStr
password: str
name: str | None = None
@field_validator("password")
@classmethod
def password_strength(cls, v: str) -> str:
if len(v) < 8:
raise ValueError("Password must be at least 8 characters")
return v
class UserResponse(BaseModel):
model_config = model_config(from_attributes=True)
id: int
email: EmailStr
name: str | None = None
```
```python
# routers/users.py
from fastapi import APIRouter, Depends, HTTPException, status
from sqlalchemy.ext.asyncio import AsyncSession
from typing import Annotated
from app.database import get_db
from app.schemas import UserCreate, UserResponse
from app import crud
router = APIRouter(prefix="/users", tags=["users"])
DbDep = Annotated[AsyncSession, Depends(get_db)]
@router.post("/", response_model=UserResponse, status_code=status.HTTP_201_CREATED)
async def create_user(payload: UserCreate, db: DbDep) -> UserResponse:
existing = await crud.get_user_by_email(db, payload.email)
if existing:
raise HTTPException(status_code=status.HTTP_409_CONFLICT, detail="Email already registered")
return await crud.create_user(db, payload)
```
```python
# crud.py
from sqlalchemy import select
from sqlalchemy.ext.asyncio import AsyncSession
from app.models import User
from app.schemas import UserCreate
from app.security import hash_password
async def get_user_by_email(db: AsyncSession, email: str) -> User | None:
result = await db.execute(select(User).where(User.email == email))
return result.scalar_one_or_none()
async def create_user(db: AsyncSession, payload: UserCreate) -> User:
user = User(email=payload.email, hashed_password=hash_password(payload.password), name=payload.name)
db.add(user)
await db.commit()
await db.refresh(user)
return user
```
## JWT Authentication Snippet
```python
# security.py
from datetime import datetime, timedelta, timezone
from jose import JWTError, jwt
from fastapi import Depends, HTTPException, status
from fastapi.security import OAuth2PasswordBearer
from typing import Annotated
SECRET_KEY = "read-from-env" # use os.environ / settings
ALGORITHM = "HS256"
oauth2_scheme = OAuth2PasswordBearer(tokenUrl="/auth/token")
def create_access_token(subject: str, expires_delta: timedelta = timedelta(minutes=30)) -> str:
payload = {"sub": subject, "exp": datetime.now(timezone.utc) + expires_delta}
return jwt.encode(payload, SECRET_KEY, algorithm=ALGORITHM)
async def get_current_user(token: Annotated[str, Depends(oauth2_scheme)]) -> str:
try:
data = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM])
subject: str | None = data.get("sub")
if subject is None:
raise ValueErrorFrom SrScorpio/alfred-dev-vscode, MIT.
More from SrScorpio/alfred-dev-vscode
- 0.589score
threat-model
SrScorpio
Usar para modelar amenazas con metodología STRIDE.
SkillAFreshness: A★ 1Claude Code +9 - 0.589score
compliance-check
SrScorpio
Usar para verificar cumplimiento RGPD, NIS2 y CRA.
SkillAFreshness: A★ 1Claude Code +9 - 0.589score
sbom-generate
SrScorpio
Usar para generar Software Bill of Materials para cumplimiento del CRA.
SkillAFreshness: A★ 1Claude Code +9 - 0.585score
write-adr
SrScorpio
Usar para escribir o cerrar un Architecture Decision Record.
SkillAFreshness: A★ 1Claude Code +9 - 0.584score
incident-response
SrScorpio
Usar ante un incidente en producción: triaje, mitigación, causa raíz y postmortem.
SkillAFreshness: A★ 1Claude Code +9 - 0.584score
evaluate-dependency
SrScorpio
Usar antes de aceptar una dependencia nueva.
SkillAFreshness: A★ 1Claude Code +9 - 0.584score
sync-project-docs
SrScorpio
Usar para sincronizar la documentación viva después de una fase.
SkillAFreshness: A★ 1Claude Code +9 - 0.584score
pr-workflow
SrScorpio
Usar para abrir o completar una pull request con descripción, labels y enlace a issue.
SkillAFreshness: A★ 1Claude Code +9 - 0.576score
sonarqube
SrScorpio
Levantar SonarQube con Docker (flujo /alfred audit de Claude Code).
SkillAFreshness: A★ 1Claude Code +9 - 0.576score
style-direction
SrScorpio
Companion visual de Selina (servidor local + scripts Python).
SkillAFreshness: A★ 1Claude Code +9 - 0.562score
memory
SrScorpio
This skill should be used when the user asks to record a design decision, search past project decisions, inspect the Alfred memory timeline, or work with the…
SkillAFreshness: A★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 1
- Last commit (this folder)
- Aug 18, 2026 (2 months ago)
- Last release
- Oct 3, 2026 (26 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 1.1.0
- License
- MIT
- Repository
- github.com/SrScorpio/alfred-dev-vscode
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
- 0.697score
fastapi-expert
https://github.com/Jeffallan
Use when building high-performance async Python APIs with FastAPI and Pydantic V2.
SkillAFreshness: A★ 12KClaude Code +9 - 0.290score
fastapi-expert
https://github.com/Jeffallan
Use when building high-performance async Python APIs with FastAPI and Pydantic V2.
SkillBFreshness: B★ 11Claude Code +9 - 0.233score
fastapi-expert
https://github.com/Jeffallan
Use when building high-performance async Python APIs with FastAPI and Pydantic V2.
SkillCFreshness: CClaude Code +9 - 0.215score
fastapi-expert
https://github.com/Jeffallan
Use when building high-performance async Python APIs with FastAPI and Pydantic V2.
SkillDFreshness: D★ 2Claude Code +9
More from https://github.com/Jeffallan
- 0.697score
angular-architect
https://github.com/Jeffallan
Generates Angular 17+ standalone components, configures advanced routing with lazy loading and guards, implements NgRx state management, applies RxJS…
SkillAFreshness: A★ 12KClaude Code +9 - 0.697score
spec-miner
https://github.com/Jeffallan
Reverse-engineering specialist that extracts specifications from existing codebases.
SkillAFreshness: A★ 12KClaude Code +9 - 0.697score
cpp-pro
https://github.com/Jeffallan
Writes, optimizes, and debugs C++ applications using modern C++20/23 features, template metaprogramming, and high-performance systems techniques.
SkillAFreshness: A★ 12KClaude Code +9 - 0.697score
code-documenter
https://github.com/Jeffallan
Generates, formats, and validates technical documentation — including docstrings, OpenAPI/Swagger specs, JSDoc annotations, doc portals, and user guides.
SkillAFreshness: A★ 12KClaude Code +9 - 0.697score
fullstack-guardian
https://github.com/Jeffallan
Builds security-focused full-stack web applications by implementing integrated frontend and backend components with layered security at every level.
SkillAFreshness: A★ 12KClaude Code +9 - 0.697score
api-designer
https://github.com/Jeffallan
Use when designing REST or GraphQL APIs, creating OpenAPI specifications, or planning API architecture.
SkillAFreshness: A★ 12KClaude Code +9
Cite this page
fastapi-expert skill. Agent Mart. https://agentmart.dev/skills/srscorpio-fastapi-expert (last updated 2026-10-24)