This is a minimalist version of the Sokoban puzzle game. It uses puzzle data in a text format that is easily found in collections on the internet, although often requiring a bit of editting.
The beauty of this implementation is that it is fully OpenGL 3.3 core profile, and uses no OpenGL-deprecated functions.
It has few embellishments, but it does have undo (u) and restart (r) functions. Each data file has several "levels". The next (n) and previous (p) keys move between levels. Bigger (b) and smaller (s) keys help you to conformally adjust the size of the window.
To move the blue "pusher" use the arrow keys. The objective is to push all the red squares onto the green squares.
Comes with dozens of families of puzzles, with each family having dozens of levels.
OpenGL 3.3 core