For C, I've really enjoyed reading the Ruby source code. There are good and bad spots, but overall especially if you know Ruby the language, the source is both entertaining and enlightening.
Is there a good guide that covers that codebase? I'm very familiar with Ruby but I've never dived into the C code and I'm not sure where to start.
Probably helpful to understand the API first before understanding the implementation. There is a well known guide here: http://silverhammermba.github.io/emberb/