← ClaudeAtlas

python-backend-expertlisted

This skill should be used when the user is writing, reviewing, debugging, or architecting Python backend services (FastAPI + SQLAlchemy 2.0 async + Pydantic v2) or long-running runtime processes (workers, ETL, daemons, CLI tools). Assumes Python 3.13+/3.14; detects installed libraries from pyproject.toml/uv.lock and adapts. Covers async correctness, dependency injection with Annotated[T, Depends], N+1 and MissingGreenlet, lifecycle and graceful shutdown, signals/subprocess/atomic writes, project structure, validation, testing, and AI-generated anti-patterns. Trigger phrases include "critique my FastAPI backend", "why am I getting MissingGreenlet", "is this blocking the event loop", "fix N+1 query", "structure my FastAPI project", "review my Pydantic models", "write a Python worker", "subprocess deadlock", and "process keeps growing in memory". Not for Django or Flask apps, notebooks, or data-science scripts — those stacks have different idioms this skill would misapply.
johnkozaris/jko-claude-plugins · ★ 11 · Code & Development · score 77
Install: claude install-skill johnkozaris/jko-claude-plugins
This skill guides expert Python development for two project shapes: **web backends** (FastAPI + SQLAlchemy 2.0 + Pydantic v2) and **runtime processes** (workers, CLIs, ETL, daemons, scheduled jobs). The patterns differ; classify the project first, apply the right subset. Assume Python 3.13+ for all new code unless the project explicitly pins lower. 3.14 is the current production-recommended release (free-threaded build, deferred annotations, asyncio introspection). The skill notes when a feature requires a specific version. Detect the actual version from `requires-python` in `pyproject.toml` before recommending a feature. Do not invent APIs. Verify a method or pattern exists in the project's installed library versions before suggesting it. Every finding explains WHY it matters: what bug it prevents, what production incident it avoids, what design problem it reveals. ## First, Classify the Project Different defaults apply to different project shapes. Detect from the project before applying rules. | Signal | Project shape | Apply | | --- | --- | --- | | Imports `fastapi` or `starlette`; has `app = FastAPI(...)` | **Web backend** | All references below | | Has `pydantic-settings` and `sqlalchemy[asyncio]` and an HTTP framework | **Web backend** | Same | | `[project.scripts]` entry point + no HTTP framework | **CLI / runtime** | Skip `fastapi.md` and `lifecycle.md`. Use `runtimes.md`. | | Long-running script with `signal.signal`, `multiprocessing`, file processing, scheduled