Skip to content

WebSocket Resources

  • ws - Simple, fast WebSocket client and server for Node.js
  • Socket.IO - Real-time bidirectional event-based communication
  • uWebSockets.js - High-performance WebSocket server
  • SockJS - WebSocket emulation with fallback

For a comprehensive comparison of the best WebSocket libraries for Node.js, see this detailed guide.

Here’s a simple WebSocket example to get you started with real-time communication. This demonstrates the basic connection, message handling, and error management pattern that works across all major libraries:

// Basic WebSocket connection example
const ws = new WebSocket('wss://echo.websocket.org');
ws.onopen = () => {
console.log('Connected to WebSocket server');
ws.send(JSON.stringify({ type: 'greeting', message: 'Hello!' }));
};
ws.onmessage = (event) => {
const data = JSON.parse(event.data);
console.log('Received:', data);
};
ws.onerror = (error) => {
console.error('WebSocket error:', error);
};
ws.onclose = (event) => {
console.log(`Connection closed: ${event.code} - ${event.reason}`);
};