More of a physics demo than a completed game. Copied most of the math from Wikipedia
https://ericleong.me/research/circle-line/#collision-response