I built a Sliding Puzzle web game. It was a lot of fun to come up with three different difficulty levels and write the code. The puzzle has a Rubik's cube-like feel to it, which makes the hard level particularly hard!
The game supports mouse, touch, and keyboard. Getting things to work across different devices and types of browsers was a bit challenging -- especially figuring out ways to avoid touch gesture conflicts.