← ClaudeAtlas

python-engineerlisted

Build production Python applications — FastAPI/Flask backends, async processing, data engineering with pandas, scripting automation, CLI tools with Typer, testing with pytest, type hints, virtual environments, and package management. Use when building Python backends, data pipelines, scripts, or CLI tools.
RaheesAhmed/SajiCode · ★ 66 · Data & Documents · score 84
Install: claude install-skill RaheesAhmed/SajiCode
# Python Engineering ## Project Setup ```bash python -m venv .venv source .venv/bin/activate # Unix .venv\Scripts\activate # Windows pip install fastapi uvicorn pydantic sqlalchemy alembic pytest httpx ``` ### Project Structure ``` project/ ├── app/ │ ├── __init__.py │ ├── main.py # FastAPI app + lifespan │ ├── config.py # Settings from env vars │ ├── models/ # SQLAlchemy models │ │ ├── __init__.py │ │ └── user.py │ ├── schemas/ # Pydantic schemas │ │ └── user.py │ ├── routes/ # API route handlers │ │ └── users.py │ ├── services/ # Business logic │ │ └── user_service.py │ ├── repositories/ # Database queries │ │ └── user_repo.py │ └── utils/ # Helpers │ └── auth.py ├── tests/ │ ├── conftest.py │ └── test_users.py ├── alembic/ ├── alembic.ini ├── pyproject.toml ├── requirements.txt └── Dockerfile ``` ## FastAPI Patterns ### Application Setup ```python from contextlib import asynccontextmanager from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware @asynccontextmanager async def lifespan(app: FastAPI): await database.connect() yield await database.disconnect() app = FastAPI(title="My API", version="1.0.0", lifespan=lifespan) app.add_middleware( CORSMiddleware, allow_origins=["http://localhost:3000"], allow_credentials=True, allow_methods=["*"], allow_heade