Minivim
This project is a work-in-progress. You can see the code for it here.
When I first started this project, I was having some trouble getting non-canonical terminal mode to work using Go, so I worked on the project in C instead to get a feel for it before restarting with Go. You can see the C code here.