Sokoban is a puzzle video game in which the player pushes boxes around in a warehouse, trying to get them to storage locations. The game was designed in 1981 by Hiroyuki Imabayashi, and first published in December 1982.
I have made it because I participated in a programming competition, and one of the tasks was to make this game. It is written in C++ using Windows API, but can be easily ported to other platforms.
This game is well-known, so you can find the rules on the Internet.