added socket.io and other