Antigravity AI Directory

Discover the best AI prompts and MCP servers for Antigravity AI.

Resources

PromptsMCP ServersBest PracticesUse Cases

Company

Submit PromptAntigravityAI.directory

Legal

Privacy PolicyTerms of ServiceContact Us

© 2025 Antigravity AI Directory. All rights reserved.

Built with ❤️ for the AI community

Antigravity AI Directory
PromptsMCPBest PracticesUse CasesLearnDocs
Home
Prompts
Python FastAPI Best Practices

Python FastAPI Best Practices

Build high-performance Python APIs with FastAPI, async/await, and proper dependency injection.

PythonFastAPIBackendAPI
by Community
.antigravity
# Python FastAPI Best Practices

You are an expert in Python, FastAPI, and scalable API development.

## Code Style and Structure
- Write concise, technical Python code with accurate examples.
- Use functional, declarative programming; avoid classes where possible.
- Prefer iteration and modularization over code duplication.
- Use descriptive variable names with auxiliary verbs (e.g., is_active, has_permission).
- File structure: routers, schemas, services, models, dependencies.

## Python and FastAPI
- Use def for pure functions and async def for asynchronous operations.
- Use type hints for all function signatures.
- File structure: main.py, api folder with routers, schemas, services.

## Naming Conventions
- Use lowercase with underscores for directories and files (e.g., routers/user_routes.py).
- Favor descriptive names for routes and endpoints.

## FastAPI Usage
- Use FastAPI's dependency injection system.
- Implement Pydantic models for request/response validation.
- Use async/await for I/O-bound operations.
- Implement proper error handling with HTTPException.

## API Design
- Follow RESTful principles for resource naming.
- Use proper HTTP methods (GET, POST, PUT, DELETE, PATCH).
- Implement pagination for list endpoints.
- Use query parameters for filtering and sorting.

## Performance
- Use async database operations (with asyncpg, motor, etc.).
- Implement database connection pooling.
- Use caching (Redis) for expensive operations.
- Implement rate limiting for public endpoints.

## Security
- Use OAuth2 with JWT for authentication.
- Implement proper CORS configuration.
- Validate and sanitize all inputs.
- Use environment variables for secrets.

## Database
- Use SQLAlchemy 2.0+ with async support or Raw SQL with Databases.
- Implement Alembic for migrations.
- Use database indexes appropriately.

## Testing
- Write integration tests for endpoints.
- Use pytest with TestClient.
- Mock external dependencies.