A rubiks cube in p5.js and WEBGL with solving! https://bobingstern.github.io/RubiksCube/
You can use "Make Mode" to click on each face and set a custom color meaning that you can input your own rubiks cube into it and it will give you the steps to solve it! If you input an unsolvable state, the program will likely fail and never solve the cube. You can press the keys labeled on each of the faces to turn the cube!