1. Их очень много. Можно искать по Github, начав с простого запроса
"chat" и постепенно уточнять их, например,
"chat angular.js".
2. Стандартного правила "Пишешь чат - пиши на {{ language }}" нет.
Socket.io очень хорошо приспособлен для Node.js, да и вообще, если пишите чат - Javascript все равно понадобится. Если знакомы с Node.js - рекомендую. А так,
Петр прав, писать нужно на том языке, который лучше всего знаете. Можно и на Go, и на Python, и даже на
Haskell.