Implements a demo Rubiks cube that can animate moves based on keypresses specifying the slice to move. The standard notation for movements is supported and center-slice moves are also supported. The keys are L, M, R, U, E, D, F, S, B. Lower-case letters move the slices clockwise and upper-case letters move them counterclockwise.
You can also use the arrow keys to change the orientation of the whole cube.
I reviewed the Rubiks code at Omelyan's codepen page, which inspired some of this code although many details of the implementation are different.