Cursor AI (.cursorrules) for FastAPI, Strawberry GraphQL & Async SQLAlchemy
Stops Cursor from hallucinating outdated Ariadne or Graphene patterns. Enforces typesafe Strawberry GraphQL resolvers, DataLoader N+1 query batching, and async session scoping.
Parametric Customizer & Compiler Live Tool
Adjust the variables below. The prompt code and API payload update dynamically in real time.
Specifies async database connection layer.
Configures caching and DataLoader backend.
# CURSOR RULES FOR FASTAPI + STRAWBERRY GRAPHQL + ASYNC SQLALCHEMY You are a Principal Python Backend Architect specialized in modern GraphQL microservices. ### TECH STACK REQUIREMENTS: - Web Framework: FastAPI (Python 3.11+) - GraphQL Engine: Strawberry GraphQL (code-first, dataclass-based) - ORM: SQLAlchemy 2.0+ (strictly async with asyncpg driver) - Schema Validation: Pydantic v2 - Database: PostgreSQL 16 with asyncpg driver - Caching Layer: Redis with redis-py async cluster ### ARCHITECTURAL RULES: 1. **Zero N+1 Query Guarantee**: - Every relational child resolver MUST use Strawberry DataLoaders. - Never query the database directly inside list item resolvers without batching. 2. **Clean Separation of Concerns**: - Schema Definition: `/app/graphql/types/` and `/app/graphql/queries/` - Business Services: `/app/services/` (pure business logic, decoupled from GraphQL context) - Database Models: `/app/models/` (SQLAlchemy 2.0 DeclarativeBase) 3. **Error Handling & Authorization**: - Use custom Strawberry Extension or Permission classes for JWT verification. - Return typed GraphQL union errors rather than unhandled 500 exceptions. 4. **Database Session Scoping**: - Inject `AsyncSession` through Strawberry Context dependency injection. - Ensure all database transactions are committed or rolled back with async context managers.
The AI code editor trusted by high-performance engineering teams.
Leonardo Phoenix & Flux: Generate photorealistic studio assets with 150 daily free credits. Zero setup required.
π 3-Step Production Execution Blueprint
How senior engineers and top creators calibrate, customize, and verify this prompt formula in production.
Target Engine Calibration
Drop this prompt into your project root as `.cursorrules` or load it into Claude 3.5 Sonnet / DeepSeek-R1 system instructions.
Dynamic Parameterization
Adjust the dynamic variables (framework, database, and client state) to match your active codebase architecture.
Sanity & Boundary Check
Run a verification query asking the model to declare its architectural constraints before it generates the first line of code.
βοΈ Recommended API Hyperparameter Calibration
Verified 2026 SettingsCALIBRATION INSIGHT: Low temperature ensures deterministic syntax, accurate AST parsing, and zero hallucinated API methods.
πΈ Real Sample Outputs & Verified Results
Visual evidence and benchmark responses generated using this exact prompt formula.
π¬ Prompt Engineering Anatomy
Why this prompt consistently delivers high-tier results: technical parameter breakdown.
Strawberry Code-First Dataclasses Strawberry utilizes standard Python type hints and dataclasses to generate the GraphQL schema automatically, preventing duplicate type definitions between Pydantic and GraphQL.
Async SQLAlchemy 2.0 Select Syntax Enforces modern select(Model) syntax over deprecated query(Model) calls, ensuring full asyncpg thread-pool compatibility.
β οΈ Critical Anti-Patterns & Execution Traps
The top 3 engineering mistakes to avoid when deploying this category of prompt into production.
Context Window Flooding
Pasting 50 unminified files into the prompt degrades attention, causing the LLM to ignore core TypeScript rules.
Missing Delimiter Isolation
Letting user instructions mix directly with system rules triggers instruction drift and hallucinations.
Over-Relying on Outdated Paradigms
Allowing the model to use deprecated React 18 patterns (e.g. useEffect for data fetching) creates security vulnerabilities.
π¬ Frequently Asked Questions
Troubleshooting common edge cases, model incompatibilities, and best practices.
Can I use this with Cursor Composer (Cmd+I)?
Yes! Place this content in `.cursorrules` in your project root, and Composer will write all new endpoints following this clean pattern.
Does Strawberry support GraphQL Subscriptions?
Yes, Strawberry provides native async generator subscription support over WebSockets.
π οΈ Recommended Companion Micro-Tools
Complementary client-side tools designed to test, sanitize, or choreograph outputs from this prompt.
Vibe Coding Prompt Architect (.cursorrules Studio)
Generate production-grade .cursorrules, .windsurfrules, and CLAUDE.md for Next.js 15, FastAPI, and Go with zero-hallucination guardrails.
Launch Tool β‘System Prompt Security Auditor & Jailbreak Scanner
Scan LLM instructions for prompt injection, persona hijacking, and instruction leaks. Score defense 0-100 and auto-harden in 0ms.
Launch Tool β‘Token & API Cost Calculator
Calculate live token counts & cost comparisons across GPT-4o, Claude 3.5, and DeepSeek-R1 with prompt caching discounts.
Launch Tool β‘Cursor AI & Claude 3.5 Sonnet Pro Bundle
Supercharge your workflow with instant codebase indexing, multi-file edits, and automated system rules.
Explore Related AI Coding & Rulesets Prompts View all β
Claude 3.5 Sonnet Senior Staff Full-Stack Refactoring Architect
Specialized prompt framework for Claude 3.5 Sonnet and Claude 3.7. Transforms messy legacy codebases into modular, testable, high-performance systems with automated regression tests.
cursorCursor AI (.cursorrules) for Next.js 15, React 19 & Tailwind CSS
Stops Cursor from writing outdated Next.js 13 patterns, Pages Router syntax, or deprecated React hooks. Enforces strict TypeScript, Server Actions, and modular clean architecture.
deepseekDeepSeek-R1 Autonomous Deep Research & Synthesis Engine
DeepSeek-R1 chain-of-thought framework designed to force deep reflection, counterfactual auditing, and hypothesis testing before producing production-ready research reports.