Collaborative online judge system(COJ) is a web-based code editor which is designed to allow multiple users to work on a single problem by establising the communicaton between different sessions with socket.io. The solution is executed by a code execution engine based on a docker. The frontend is based on Angular. The restful API is relied on Nodejs framework. The execution environment is based on docker container. The user system is using Auth0. It also has web components in the front end to add problems to passed to the restful API, in turn saves to database which based on a web based MongoDB mlab.
Collaborative coding between different sessions
Obserable search bar
Auth0 login system
MongoDB noSQL database