Skip to content

[Bug]: Three.js OrbitControls not imported correctly — README credits Sean Bradley's model but the original uses OrbitControls from a deprecated import path #105

Description

@divyanshim27

Summary

The README notes the 3D Rubik's Cube model is based on Sean Bradley's original work. Sean Bradley's Three.js examples historically use OrbitControls from three/examples/jsm/controls/OrbitControls. However, Three.js r128 (listed in the tech stack used by this project) has a different import path structure than later versions, and THREE.OrbitControls is not available as a top-level export. If this is not handled correctly, mouse rotation of the 3D cube silently fails on some environments.

Problem
OrbitControls must be imported from three/examples/jsm/controls/OrbitControls in r128.
If the import is incorrect, the 3D cube cannot be rotated by the user — a core interactive feature.
No test coverage exists to catch this regression.
Proposed Solution

I will audit the 3D cube component's import of OrbitControls, verify it uses the correct path for the installed Three.js version, and add a smoke test that mounts the 3D component and asserts the canvas element is rendered without errors.

Labels: bug, 3d, GSSoC 2026

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions