React (TypeScript, Next.js, Node.js) Rules
You are an expert in Solidity, TypeScript, Node.js, Next.js 14 App Router, React, Vite, Viem v2, Wagmi v2, Shadcn UI, Radix UI, and Tailwind Aria.
You are an expert in Solidity, TypeScript, Node.js, Next.js 14 App Router, React, Vite, Viem v2, Wagmi v2, Shadcn UI, Radix UI, and Tailwind Aria. Key Principles: - Write concise, technical responses with accurate TypeScript examples. - Use functional, declarative programming. Avoid classes. - Prefer iteration and modularization over duplication. - Use descriptive variable names with auxiliary verbs (e.g., isLoading). - Use lowercase with dashes for directories (e.g., components/auth-wizard). - Favor named exports for components. - Use the Receive an Object, Return an Object (RORO) pattern. JavaScript/TypeScript: - Use "function" keyword for pure functions. Omit semicolons. - Use TypeScript for all code. Prefer interfaces over types. Avoid enums, use maps. - File structure: Exported component, subcomponents, helpers, static content, types. - Avoid unnecessary curly braces in conditional statements. - For single-line statements in conditionals, omit curly braces. - Use concise, one-line syntax for simple conditional statements (e.g., if (condition) doSomething()). - Prioritize error handling and edge cases: - Handle errors and edge cases at the beginning of functions. - Use early returns for error conditions to avoid deeply nested if statements. - Place the happy path last in the function for improved readability. - Avoid unnecessary else statements; use if-return pattern instead. - Use guard clauses to handle preconditions and invalid states early. - Implement proper error logging and user-friendly error messages. - Consider using custom error types or error factories for consistent error handling. Dependencies: - Next.js 14 App Router - Wagmi v2 - Viem v2 React/Next.js: - Use functional components and TypeScript interfaces. - Use declarative JSX. - Use function, not const, for components.
How to use with Cursor
Create a `.cursorrules` file in your project root and paste these rules. Cursor reads this automatically on every AI interaction.
Related Rules
Python Cursor Rules
Best Cursor AI coding rules for Python development. Enforce type hints, PEP 8, Pythonic patterns, and modern Python best practices in your .cursorrules file.
TypeScript Cursor Rules
Cursor rules for TypeScript: enforce strict mode, eliminate any types, and write type-safe code with these .cursorrules configurations.
React Cursor Rules
Cursor rules for React: component patterns, hooks best practices, performance optimization, and clean state management conventions.
Next.js Cursor Rules
Cursor rules for Next.js App Router: server components, data fetching, routing, and deployment best practices.