A Node.js based online judge which uses Docker for sandboxed evaluation of submissions,RabbitMQ as a task queue for asynchronous and scalable evaluation of submissions outside the request respone loop and Socket.IO for real time update on submission judgements as they are evaluated in the background.