все не правильно
создаем сущность события (Event). Добавляем в базу допустим событие "Добавлен новый лайк" и через сокет слушаем эти события на бэкенде (socket.io, pusher.com или свой сервер)
на практике создаем модель Event + связи Event.User, Event.Project допустим. У каждого Event будет поле listener допустим 'click'. На клиенте добавляем listener для каждого события и если событие сработало пушим уведомление на бэкенд, на бэке обновлем базу и пушим уведомление на клиент типа сработало событие "Добавлен новый лайк" в браузере отображаем событие