Backend .mdc

FastAPI

FastAPI best practices and patterns for building modern Python web APIs

How to use
  1. Copy the rule content.
  2. In your project root, create .cursorrules or .cursor/rules/fastapi.mdc
  3. Paste the content and save.

FastAPI Best Practices

Project Structure

  • Use proper directory structure
  • Implement proper module organization
  • Use proper dependency injection
  • Keep routes organized by domain
  • Implement proper middleware
  • Use proper configuration management

API Design

  • Use proper HTTP methods
  • Implement proper status codes
  • Use proper request/response models
  • Implement proper validation
  • Use proper error handling
  • Document APIs with OpenAPI

Models

  • Use Pydantic models
  • Implement proper validation
  • Use proper type hints
  • Keep models organized
  • Use proper inheritance
  • Implement proper serialization

Database

  • Use proper ORM (SQLAlchemy)
  • Implement proper migrations
  • Use proper connection pooling
  • Implement proper transactions
  • Use proper query optimization
  • Handle database errors properly

Authentication

  • Implement proper JWT authentication
  • Use proper password hashing
  • Implement proper role-based access
  • Use proper session management
  • Implement proper OAuth2
  • Handle authentication errors properly

Security

  • Implement proper CORS
  • Use proper rate limiting
  • Implement proper input validation
  • Use proper security headers
  • Handle security errors properly
  • Implement proper logging

Performance

  • Use proper caching
  • Implement proper async operations
  • Use proper background tasks
  • Implement proper connection pooling
  • Use proper query optimization
  • Monitor performance metrics

Testing

  • Write proper unit tests
  • Implement proper integration tests
  • Use proper test fixtures
  • Implement proper mocking
  • Test error scenarios
  • Use proper test coverage

Deployment

  • Use proper Docker configuration
  • Implement proper CI/CD
  • Use proper environment variables
  • Implement proper logging
  • Use proper monitoring
  • Handle deployment errors properly

Documentation

  • Use proper docstrings
  • Implement proper API documentation
  • Use proper type hints
  • Keep documentation updated
  • Document error scenarios
  • Use proper versioning

Similar rules

More in Backend →