React Doctor
492 rules react-doctor@0.9.18
Complete effective rule inventory.
Rules
No enabled React Doctor rules match this search.
-
react-doctor/three-no-object-construction-in-renderConstruct mutable Three.js objects in a stable initializer, effect, event, or module scope instead of recreating them during React render
: warning in React projects -
react-doctor/three-no-redundant-uniforms-need-updateMutate ShaderMaterial uniform values directly; Three.js uploads custom uniforms during rendering
: warning in React projects -
react-doctor/three-no-shader-configuration-mutation-in-animation-loopKeep shader source and program configuration stable; animate existing uniform values instead
: error in React projects -
react-doctor/three-no-shadows-on-unsupported-lightUse a DirectionalLight, PointLight, or SpotLight when the scene needs a shadow-casting light
: warning in React projects -
react-doctor/three-no-state-in-animation-loopMutate Three.js objects or refs during frames; reserve React state for guarded, infrequent transitions
: warning in React projects -
react-doctor/three-no-state-in-pointer-moveKeep continuous pointer previews in Three.js objects or refs and publish React state when the interaction commits
: warning in React projects -
react-doctor/three-no-sync-readback-in-animation-loopUse readRenderTargetPixelsAsync or move GPU readback to a discrete, lower-frequency path
: warning in React projects -
react-doctor/three-no-unconditional-renderer-resize-in-animation-loopCompare the drawing-buffer size first and resize the renderer only when its display size changed
: warning in React projects -
react-doctor/three-on-before-compile-require-program-cache-keyReturn every mutable shader-patch variant from customProgramCacheKey on the same material
: error in React projects -
react-doctor/three-prefer-gpu-instanced-animationMove repeated per-instance transform motion into instanced attributes, a vertex shader, or GPU simulation
: warning in React projects -
react-doctor/three-prefer-gpu-position-animationAnimate repeated vertex or particle positions in a vertex shader, instanced attribute, or GPU simulation instead of rewriting them on the CPU every frame
: warning in React projects -
react-doctor/three-prefer-instanced-meshReplace repeated Mesh objects that share geometry and material with one InstancedMesh and per-instance transforms
: warning in React projects -
react-doctor/three-prefer-set-animation-loopUse renderer.setAnimationLoop for Three.js animation-loop compatibility, including WebXR
: warning in React projects -
react-doctor/three-raw-shader-require-fragment-float-precisionDeclare a default fragment float precision or qualify every floating-point declaration
: error in React projects -
react-doctor/three-raw-shader-require-glsl3-versionSet glslVersion to THREE.GLSL3 when RawShaderMaterial uses GLSL 3 syntax
: error in React projects -
react-doctor/three-require-animation-mixer-cleanupStop component-owned AnimationMixer actions and uncache their owned root in React cleanup
: warning in React projects -
react-doctor/three-require-animation-mixer-updateCall mixer.update(deltaSeconds) from the renderer animation loop after starting mixer actions
: error in React projects -
react-doctor/three-require-camera-aspect-on-resizeUpdate each rendered PerspectiveCamera aspect when resizing its renderer, then update its projection matrix
: error in React projects -
react-doctor/three-require-controls-cleanupDispose component-owned Three.js controls in a React cleanup so their DOM listeners are removed
: warning in React projects -
react-doctor/three-require-controls-updateCall controls.update in the animation loop when OrbitControls or MapControls enables damping or auto-rotation
: warning in React projects -
react-doctor/three-require-data-texture-updateSet texture.needsUpdate to true after changing data-texture pixels
: error in React projects -
react-doctor/three-require-dynamic-buffer-usageCall attribute.setUsage(DynamicDrawUsage) before its first render
: warning in React projects -
react-doctor/three-require-environment-for-metalProvide scene environment lighting or an envMap for strongly metallic standard and physical materials
: warning in React projects -
react-doctor/three-require-frame-deltaScale incremental transforms and interpolation by Clock.getDelta(), use delta-aware damping, or assign from absolute animation time
: warning in React projects -
react-doctor/three-require-gpu-computation-cleanupDispose component-owned GPUComputationRenderer instances during effect cleanup
: warning in React projects -
react-doctor/three-require-instanced-buffer-updateAfter setMatrixAt, setColorAt, or setMorphAt, set the matching instance buffer's needsUpdate flag to true
: error in React projects -
react-doctor/three-require-ktx2-detect-supportCall detectSupport(renderer), or await detectSupportAsync(renderer), before loading KTX2 textures
: error in React projects -
react-doctor/three-require-lighting-for-pbrAdd a light, scene environment, material envMap, lightMap, or intentional emissive source for PBR materials
: warning in React projects -
react-doctor/three-require-lit-material-normalsProvide a normal BufferAttribute or call computeVertexNormals() before applying a normal map to custom geometry
: error in React projects -
react-doctor/three-require-loader-error-handlingProvide Loader.load with an onError callback, or await, return, or otherwise observe Loader.loadAsync rejections
: warning in React projects -
react-doctor/three-require-owned-geometry-cleanupDispose locally constructed geometries when their React owner releases them
: warning in React projects -
react-doctor/three-require-owned-material-cleanupDispose locally constructed materials when their React owner releases them
: warning in React projects