add socket.io, update view