In the simulator below, use the drop down options to select from some pre-built patterns. If you want to control the individual joints in the snake, you can expand the 'Angle Controls'.

Unfortunately this simulator may not work particularly well on mobile. For a full screen version, click here.


Code is available on Github: https://github.com/mwkling/rubiks-snake. This was built using three.js and dat.GUI.

Interesting facts about the Rubik's Snake:

  • Consists of 24 'wedges', each of which is a triangular prism.
  • Not a puzzle like the Rubik's Cube. Inventor Erno Rubik said, "The snake is not a problem to be solved; it offers infinite possibilities of combination. It is a tool to test out ideas of shape in space."[1]
  • Originally released in 1981 just after the Rubik's Cube.[1:1]
  • There are 23 joints and 4 possible orientations for each joint, so a lower bound for the total number of possible configurations is 4^23.
  • In reality, some of these configurations are impossible as the snake will intersect itself. About 19% of those 4^23 arrangements are actually possible.

  1. Washington Post article on the release of the Rubik's Snake ↩︎ ↩︎