This is a project I initially made to learn about Pygame, but I took it quite a bit further and learned a lot.