Rubik's cube solver.
The program creates a virtual cube. You can srcamble the cube or draw a pattern from a real cube and the computer will give you the solving moves. There are three ways of automatic solve implemented in the program: the beginner method, with code written by me, the CFOP method and the Kociemba method (which is the fastest in terms of number of moves), with the last two methods being carried out by the python library rubik_solver. You can also try to solve the virtual cube alone as fast as you can. The moves can be done on the virtual cube using keyboard or mouse, depending on your convenience.
Try it if you want.
Python libraries needed: random, math, os, time, tkinter, pygame, pillow, rubik_solver. Run the python file "rubiks_cube.py".