I have always had a great interest in Rubik's Cubes and their solutions, and enjoy sharing my knowledge with others. Because of this, I was inspired to create a Rubik's Cube simulator.

RCS is a 3D-rendered interactive Rubik's Cube simulator. Though many such simulators exist, most are manipulated with the mouse. In contrast, RCS uses the standard notation for cube moves as input, which is useful for learning the notation. It is also very convenient when working with algorithms from external websites, as one can simply paste the notation in.

When developing RCS, I wanted the cube to be aesthetically pleasing. I chose to use three.js to render the cube as floating tiles, instead of a colored box, with customized rotations emulating the physics of a real cube. This also facilitated allowing one to see the back sides of the cube, similar to how one can glance at those sides on a physical cube.

I also designed a custom loading animation based on the surface of a 3x3x3 cube. It is accomplished by using a node.js program to compute a Euler circuit of the cube outline. The circuit is then transformed into an SVG, which is used to animate a trace of the 3D path. Lastly, I added a "blindfold" mode, for those who want an additional challenge (and because the slate cube looks sharp).