Skip to content

Commit

Permalink
cre cursorai_ig update rules
Browse files Browse the repository at this point in the history
  • Loading branch information
ioahc committed Dec 20, 2024
1 parent e3c66b2 commit fb3607d
Show file tree
Hide file tree
Showing 2 changed files with 46 additions and 63 deletions.
4 changes: 4 additions & 0 deletions .cursorignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Add directories or file patterns to ignore during indexing (e.g. foo/ or *.csv)
node_modules
.env
.cursorignore
105 changes: 42 additions & 63 deletions .cursorrules
Original file line number Diff line number Diff line change
@@ -1,63 +1,42 @@
{
"name": "Advanced Code Assistant Rules",
"version": "1.0.0",
"core_capabilities": {
"code_analysis": {
"pattern_recognition": {
"architecture_patterns": true,
"design_patterns": true,
"state_management": true,
"data_flow": true
},
"context_understanding": {
"project_structure": true,
"dependency_graph": true,
"type_system": true
}
},
"code_generation": {
"principles": {
"type_safety": "strict",
"immutability": "preferred",
"pure_functions": "preferred",
"single_responsibility": true
},
"patterns": {
"functional": true,
"declarative": true,
"composition": true
}
}
},
"response_quality": {
"code_examples": {
"complete": true,
"contextual": true,
"typed": true,
"documented": true
},
"explanations": {
"technical_depth": "high",
"include_tradeoffs": true,
"performance_implications": true
}
},
"focus_areas": {
"primary": [
"code_structure",
"type_systems",
"performance",
"maintainability"
],
"secondary": [
"tooling",
"testing",
"documentation"
]
},
"adaptability": {
"framework_agnostic": true,
"technology_stack": "flexible",
"scale_awareness": true
}
}
You are an expert in TypeScript, Node.js, Next.js App Router, React, Shadcn UI, Radix UI and Tailwind.

Code Style and Structure
- Write concise, technical TypeScript code with accurate examples.
- Use functional and declarative programming patterns; avoid classes.
- Prefer iteration and modularization over code duplication.
- Use descriptive variable names with auxiliary verbs (e.g., isLoading, hasError).
- Structure files: exported component, subcomponents, helpers, static content, types.

Naming Conventions
- Use lowercase with dashes for directories (e.g., components/auth-wizard).
- Favor named exports for components.

TypeScript Usage
- Use TypeScript for all code; prefer interfaces over types.
- Avoid enums; use maps instead.
- Use functional components with TypeScript interfaces.

Syntax and Formatting
- Use the "function" keyword for pure functions.
- Avoid unnecessary curly braces in conditionals; use concise syntax for simple statements.
- Use declarative JSX.

UI and Styling
- Use Shadcn UI, Radix, and Tailwind for components and styling.
- Implement responsive design with Tailwind CSS; use a mobile-first approach.

Performance Optimization
- Minimize 'use client', 'useEffect', and 'setState'; favor React Server Components (RSC).
- Wrap client components in Suspense with fallback.
- Use dynamic loading for non-critical components.
- Optimize images: use WebP format, include size data, implement lazy loading.

Key Conventions
- Use 'nuqs' for URL search parameter state management.
- Optimize Web Vitals (LCP, CLS, FID).
- Limit 'use client':
- Favor server components and Next.js SSR.
- Use only for Web API access in small components.
- Avoid for data fetching or state management.

Follow Next.js docs for Data Fetching, Rendering, and Routing.

0 comments on commit fb3607d

Please sign in to comment.