</>

FastAPI Cheat Sheet

Practical FastAPI cheat sheet with setup steps, core workflows, debugging, and copy-paste examples.

fastapi framework web-dev deployment

FastAPI cheat sheet with real commands and snippets for setup, core workflows, debugging, and production-safe automation patterns. If you are working across tools, pair this with the Python Cheat Sheet and Pytest Cheat Sheet.

Setup and Installation

Goal: Create a fresh project

# Scaffold project using official starter
python -m venv .venv && source .venv/bin/activate

# Install dependencies after scaffold completes
pip install fastapi uvicorn

Goal: Verify local toolchain versions

# Print Node.js runtime version
node --version

# Print npm version for lockfile consistency
npm --version

# Inspect package scripts in project
cat package.json | rg "scripts" -n

Core Development Workflow

Goal: Run local development server

# Start framework dev server with hot reload
uvicorn app:app --reload

# Check local endpoint health
curl -I http://localhost:3000 || curl -I http://localhost:5173 || true

Goal: Build and preview production output

# Build optimized production assets
pytest

# Run production preview server
curl -I http://127.0.0.1:8000/docs

Goal: Implement a core feature snippet

# Basic FastAPI app with typed response
from fastapi import FastAPI

app = FastAPI()

@app.get('/health')
def health() -> dict[str, bool]:
    return {'ok': True}

Testing and Quality

Goal: Run tests and static checks

# Execute project tests
pytest

# Run type checking when available
npm run check || npx tsc --noEmit || true

# Run linting for fast feedback
npm run lint || true

Deployment and Operations

Goal: Prepare deployment artifacts

# Create production build before deployment
pytest

# Validate environment variables are set
node -e "console.log('NODE_ENV=', process.env.NODE_ENV || 'unset')"

# Smoke-test production route after deploy
curl -I https://devcheatsheets.com

Debugging and Troubleshooting

Goal: Inspect build and runtime failures

# Reinstall dependencies from lockfile
rm -rf node_modules && npm ci

# Re-run build with clean cache
npm run build

# Search source for suspect route/config patterns
rg "route|middleware|config" src app -n

Common Gotchas

  • Run FastAPI builds locally before shipping to CI/CD environments.
  • Keep environment secrets outside the repository and load them per environment.
  • Avoid stale dependency locks by using npm ci in automation.
  • Validate route and middleware behavior with explicit smoke tests.
  • Keep framework and plugin versions aligned to avoid build regressions.

Related Cheat Sheets