Q:

Не подключается client Socket

Ошибка вида:

Uncaught ReferenceError: require is not defined **socket.io.js:11**

Ругается на строку:

var client = require('socket.io-client');

Подключение такое:

<script src="/node_modules/socket.io/lib/socket.io.js"></script>

Кто сталкивался?

A:

Это потому что require для кода node.js, а не браузера.
require - это только работает на сервере. Например:
var io = require('socket.io').listen(80);
io.sockets.on('connection', function (socket) {
  socket.emit('news', { hello: 'world' });
  socket.on('my other event', function (data) {
    console.log(data);
  });
});

Вот так как надо использовать socket.io в браузере:
<script src="/socket.io/socket.io.js"></script>
<script>
  var socket = io.connect('http://localhost');
  socket.on('news', function (data) {
    console.log(data);
    socket.emit('my other event', { my: 'data' });
  });
</script>

Конечно, нужно убедиться, что socket.io установлен, и что путь /socket.io/socket.io.js существует, и что сервер его оказывает.

