Collaborative Text Editor for the Web

August 29, 2017


Interview season is coming around, which means phone interviews using CoderPad and the like. I wanted to do some interview prep, so I asked my buddy to call me. The problem is, I wanted to simulate the environment the best I could. I could use Google Docs or a free trial of CoderPad, but I can barely live without keyboard shortcuts, and I didn’t want to use a free trial.

So I built my own collaborative text editor over the weekend, using Node, Mongo, and WebSockets.

You can see that project here, and the live version of the app is hosted on Heroku here.

I decided to migrate the server to Go, since fast updates on the client and synchronicity on the server could potentially lead to concurrency issues. Go is designed to handle concurrency, which is pretty cool. I also switched from native WebSockets to Socket.io. It’s a good thing that there’s a Go implementation of Socket.io that I could use, too.

You can find the Go project here and the live version, also hosted on Heroku, is here.


Return to projects