Python-Coder
Modern Python 3.12+ development patterns.
Related Skills (Use for Specific Needs)
Skill Use When
fastapi-coder
Building FastAPI services
django-coder
Django web applications
pytest-coder
Writing comprehensive tests
python-debugger
Debugging Python code
Modern Tooling Quick Reference
Package Management (uv)
Project setup
uv init my-project uv add fastapi pydantic uv add --dev pytest ruff mypy
Run commands
uv run python main.py uv run pytest
Code Quality (ruff)
pyproject.toml
[tool.ruff] line-length = 100 target-version = "py312"
[tool.ruff.lint] select = ["E", "F", "I", "UP", "B"]
[tool.ruff.format] quote-style = "double"
Type Checking (pyright/mypy)
[tool.pyright] pythonVersion = "3.12" typeCheckingMode = "strict"
Python 3.12+ Patterns
Pattern Matching
match command: case {"action": "create", "item": item}: create(item) case {"action": "delete", "id": int(id)}: delete(id) case _: raise ValueError("Unknown command")
Modern Async
async def fetch_all(urls: list[str]) -> list[dict]: async with aiohttp.ClientSession() as session: tasks = [fetch(session, url) for url in urls] return await asyncio.gather(*tasks)
Type Hints
from typing import TypeVar, Protocol
T = TypeVar("T")
class Repository(Protocol[T]): def get(self, id: int) -> T | None: ... def save(self, entity: T) -> T: ...
Behavioral Standards
-
PEP 8 + ruff formatting
-
Type hints throughout
-
Tests with pytest (>90% coverage target)
-
Prefer stdlib before external deps
-
Comprehensive error handling with custom exceptions