RuleStack

Configs

Stacks

Compare

Diff

RuleStack

Configs

Stacks

Compare

Diff

Read API

RuleStack

Configs

Stacks

Compare

Diff

Read API

Configs/Cursor rules/madebyaris/advance-minimax-m3-cursor-rules

Cursor rule

.cursor/rules/3d-graphics.mdc

Three.js / React Three Fiber syntax: scene setup, R3F hooks, models, controls. Load for 3D code — taste, perf budgets, and mobile WebGL live in the 3d-web-experiences skill.

Cursor rules

Quality

62/100

Scores the file, not the repository.

Length

552 words

9 headings · 6 code blocks

Repository

124

— · pushed 49 days ago

Last changed

3 days ago

First indexed 3 days ago.
madebyaris/advance-minimax-m3-cursor-rules/.cursor/rules/3d-graphics.mdcRawGitHub
1---
2description: "Three.js / React Three Fiber syntax: scene setup, R3F hooks, models, controls. Load for 3D code — taste, perf budgets, and mobile WebGL live in the 3d-web-experiences skill."
3globs: ["**/*.{jsx,tsx,js,ts}", "**/three/**", "**/*.glb", "**/*.gltf"]
4alwaysApply: false
5---
6 
7# 3D Graphics — Syntax Reference
8 
9Mechanical patterns for Three.js, React Three Fiber (R3F), and `@react-three/drei`. For aesthetic direction, performance tiers, responsive/mobile WebGL, degradation, accessibility, and verified recipes, load the **`3d-web-experiences`** skill (`reference.md` for full scenes and bug catalog).
10 
11Verify package APIs against installed versions before asserting prop names.
12 
13---
14 
15## CRITICAL: Container Dimensions
16 
17A WebGL canvas without a sized parent renders at zero height or wrong aspect.
18 
19```jsx
20// WRONG
21<div><Canvas><Scene /></Canvas></div>
22 
23// CORRECT — explicit height on the container
24<div style={{ height: '500px', width: '100%' }}>
25 <Canvas><Scene /></Canvas>
26</div>
27```
28 
29Vanilla Three.js: size the renderer to the **container**, not always `window` — use `ResizeObserver` or container `clientWidth` / `clientHeight`.
30 
31---
32 
33## R3F Canvas Baseline
34 
35```jsx
36import { Canvas } from '@react-three/fiber';
37import { OrbitControls, Environment } from '@react-three/drei';
38 
39export function Scene() {
40 return (
41 <div style={{ height: '500px', width: '100%' }}>
42 <Canvas shadows dpr={[1, 2]} camera={{ position: [0, 0, 5], fov: 45 }}>
43 <Environment preset="city" />
44 <ambientLight intensity={0.4} />
45 <directionalLight position={[5, 5, 5]} castShadow />
46 <Mesh />
47 <OrbitControls enableDamping />
48 </Canvas>
49 </div>
50 );
51}
52```
53 
54Set tone mapping and output color space on the renderer for PBR that is not flat — see `3d-web-experiences` → renderer baseline.
55 
56---
57 
58## Hooks & Imports (common bugs)
59 
60```jsx
61import { useRef, useState } from 'react';
62import { useFrame } from '@react-three/fiber'; // NOT from 'react'
63import type { Mesh } from 'three';
64 
65function AnimatedBox() {
66 const ref = useRef<Mesh>(null);
67 useFrame((_, delta) => {
68 if (ref.current) ref.current.rotation.y += delta;
69 });
70 return (
71 <mesh ref={ref}>
72 <boxGeometry />
73 <meshStandardMaterial />
74 </mesh>
75 );
76}
77```
78 
79| Mistake | Fix |
80|---------|-----|
81| `useFrame` from `react` | Import from `@react-three/fiber` |
82| `<Detail>` from `three` | Use drei `<Detailed distances={[0, 10, 20]}>` with child meshes |
83| `InstancedMesh` from fiber | Use JSX `<instancedMesh>`; `Object3D` from `three` |
84 
85---
86 
87## Models & Loading
88 
89```jsx
90import { Suspense } from 'react';
91import { useGLTF, Html, useProgress } from '@react-three/drei';
92 
93function Model({ url }) {
94 const { scene } = useGLTF(url);
95 return <primitive object={scene} />;
96}
97useGLTF.preload('/models/asset.glb');
98 
99function Loader() {
100 const { progress } = useProgress();
101 return <Html center>{progress.toFixed(0)}%</Html>;
102}
103 
104// Wrap async assets:
105<Suspense fallback={<Loader />}><Model url="…" /></Suspense>
106```
107 
108Prefer `.glb` with Draco/Meshopt compression for web (see skill → asset pipeline).
109 
110---
111 
112## LOD & Instancing (mechanics)
113 
114```jsx
115import { Detailed } from '@react-three/drei';
116 
117<Detailed distances={[0, 10, 25]}>
118 <HighPolyMesh />
119 <MediumPolyMesh />
120 <LowPolyMesh />
121</Detailed>
122```
123 
124For many copies of the same geometry, use `<instancedMesh>` or drei `<Instances>`. Budgets, DPR clamps, and `frameloop="demand"`: **`3d-web-experiences`**.
125 
126---
127 
128## Camera Controls (drei)
129 
130```jsx
131import { OrbitControls, MapControls } from '@react-three/drei';
132 
133<OrbitControls enableDamping dampingFactor={0.05} minDistance={2} maxDistance={20} />
134```
135 
136Respect `prefers-reduced-motion` — pause auto-rotate and heavy camera motion (skill → accessibility).
137 
138---
139 
140## Verification (3D changes)
141 
142| Check | How |
143|-------|-----|
144| Renders | Browser load — not blank/black canvas |
145| Console | No WebGL / shader compile errors |
146| Resize | Container height preserved; canvas scales with parent |
147| Mobile | DPR/effects tier reduced when skill budget applies |
148 
149Browser verification required; use console + visual check minimum.
150 
151---
152 
153## When NOT to Load This File
154 
155- 2D UI only — use `design-systems` + `anti-slop-design`.
156- “Make it look good” / hero aesthetic — start with **`3d-web-experiences`** Step 1 (direction + slop catalog), then use this file for syntax.
157 

Sections

  • 3D Graphics — Syntax Reference
  • CRITICAL: Container Dimensions
  • R3F Canvas Baseline
  • Hooks & Imports (common bugs)
  • Models & Loading
  • LOD & Instancing (mechanics)
  • Camera Controls (drei)
  • Verification (3D changes)
  • When NOT to Load This File

What it covers

lint-formatcode-style

Stack — with the evidence

python

(0.80)

Glob targeting

  • **/*.{jsx,tsx,js,ts}
  • **/three/**
  • **/*.glb
  • **/*.gltf

Format

Cursor rules

The most expressive format here. Many small .mdc files, each with frontmatter declaring when it should load, so a rule about migrations only enters context when a migration is open. Costs the most to maintain and only one editor reads it.

What the corpus says about it

Repository

Owner
madebyaris
Language
—
License
—
Archived
no

All configs in this repo

Also in madebyaris/advance-minimax-m3-cursor-rules

Diff this repo’s formats

One repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?

The other instruction files in this repository
RepositoryFormatStackCoversScoreChanged
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/agent-teams.mdc · 124Cursor rulespythonsetupstylegitapi+373/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/cursor-agent-orchestration.mdc · 124Cursor rulespythonstyledo-notagent-behaviour73/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/cursor-mcp-optimization.mdc · 124Cursor rulespythonstyledo-notagent-behaviour65/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/cursor-tools-mastery.mdc · 124Cursor rulespythonstylemonorepoagent-behaviour58/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/design-systems.mdc · 124Cursor rulespythonlint-formatstyleuido-not77/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/fable5-reasoning.mdc · 124Cursor rulespythonstyle58/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/devops-infrastructure.mdc · 124Cursor rulespythonstylesecuritydeploymentdo-not79/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/language-agnostic-patterns.mdc · 124Cursor rulespythonteststylearchtesting-strategy+558/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/minimax-m3-core.mdc · 124Cursor rulespythonbuildtestlint-formatstyle+475/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/minimax-m3-self-evolution.mdc · 124Cursor rulespythonstyledo-notagent-behaviour65/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/minimax-m3-status-verification.mdc · 124Cursor rulespythonstyletypestesting-strategyapi+165/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/minimax-m3-verification.mdc · 124Cursor rulespythonbuildtestlint-formatstyle+389/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/minimax-mcp-tools.mdc · 124Cursor rulespythonstyleagent-behaviour54/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/mobile-cross-platform.mdc · 124Cursor rulespythonsetupperformancedeployment68/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/skill-authoring.mdc · 124Cursor rulespythonstylesecurityapi58/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/clarify-first-prompting.mdc · 124Cursor rulespythonstyledo-not61/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/fable5-coding-craft.mdc · 124Cursor rulespythonteststylearchtesting-strategy+158/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/model-compatibility.mdc · 124Cursor rulespythonstyledeploymentagent-behaviour66/1003 days ago
madebyaris/advance-minimax-m3-cursor-rules.cursor/rules/tool-discovery.mdc · 124Cursor rulespythonstyletypesdatabaseagent-behaviour58/1003 days ago
Diff against .cursor/rules/agent-teams.mdc Diff against .cursor/rules/cursor-agent-orchestration.mdc Diff against .cursor/rules/cursor-mcp-optimization.mdc Diff against .cursor/rules/cursor-tools-mastery.mdc Diff against .cursor/rules/design-systems.mdc Diff against .cursor/rules/fable5-reasoning.mdc Diff against .cursor/rules/devops-infrastructure.mdc Diff against .cursor/rules/language-agnostic-patterns.mdc Diff against .cursor/rules/minimax-m3-core.mdc Diff against .cursor/rules/minimax-m3-self-evolution.mdc Diff against .cursor/rules/minimax-m3-status-verification.mdc Diff against .cursor/rules/minimax-m3-verification.mdc Diff against .cursor/rules/minimax-mcp-tools.mdc Diff against .cursor/rules/mobile-cross-platform.mdc Diff against .cursor/rules/skill-authoring.mdc Diff against .cursor/rules/clarify-first-prompting.mdc Diff against .cursor/rules/fable5-coding-craft.mdc Diff against .cursor/rules/model-compatibility.mdc Diff against .cursor/rules/tool-discovery.mdc

Similar configs

Same format, overlapping stack, ranked by quality.

Same format, overlapping stack, ranked by quality
RepositoryFormatStackCoversScoreChanged
TechSquidTV/Hermes.cursor/rules/10-hermes-api.mdc · 45Cursor rulestypescriptpytest+15testlint-formatstylearch+5100/1003 days ago
TechSquidTV/Hermes.cursor/rules/20-hermes-api-tests.mdc · 45Cursor rulestypescriptpytest+15teststyletesting-strategysecurity+397/1003 days ago
langflow-ai/langflow.cursor/rules/docs_development.mdc · 153kCursor rulespythonnode+16setupbuildtestlint-format+797/1003 days ago
nerds-odd-e/doughnut.cursor/rules/cli.mdc · 49Cursor rulestypescriptcypress+14setupbuildteststyle+496/1003 days ago
iloveitaly/llm-ide-rules.cursor/rules/general.mdc · 13Cursor rulespythonpytest+2teststyledo-notagent-behaviour+192/1003 days ago
danielvm-git/bigpowers.cursor/rules/organize-workspace.mdc · 119Cursor rulesshellnode+8buildstylegitdeployment+289/1003 days ago
danielvm-git/bigpowers.cursor/rules/guard-git.mdc · 119Cursor rulesshellnode+8stylearchgitsecurity+289/1003 days ago
nerds-odd-e/doughnut.cursor/rules/frontend-testing.mdc · 49Cursor rulestypescriptcypress+14buildteststyletesting-strategy+289/1003 days ago
RuleStack

Built by

Kynth Studio

Directory

Configs
Stacks
Compare formats
Diff two configs
Best AGENTS.md examples

Formats

AGENTS.md
CLAUDE.md
Cursor rules
Copilot instructions

Reference

Read API
Corpus health
Privacy Policy
Terms

RuleStack

RuleStack

Built by

Kynth Studio

Directory

Configs
Stacks
Compare formats
Diff two configs
Best AGENTS.md examples

Formats

AGENTS.md
CLAUDE.md
Cursor rules
Copilot instructions

Reference

Read API
Corpus health
Privacy Policy
Terms

RuleStack

RuleStack

Built by

Kynth Studio

Directory

Configs
Stacks
Compare formats
Diff two configs
Best AGENTS.md examples

Formats

AGENTS.md
CLAUDE.md
Cursor rules
Copilot instructions

Reference

Read API
Corpus health
Privacy Policy
Terms

RuleStack