EM-WebSocket is an asynchronous WebSocket server library for Ruby built on the EventMachine networking framework. It lets applications accept connections and react to open, message, close, error, ping, and pong events through callbacks. The server supports the standardized WebSocket protocol as well as numerous older drafts retained for legacy compatibility. Connection handshakes expose paths, query strings, origins, headers, protocol versions, and security status. The library can serve encrypted WSS connections directly or operate behind an SSL termination proxy. It also supports clean close codes, configurable frame-size limits, automatic pong responses, binary messages, and a health-check endpoint. Its event-driven design is suited to chat, broadcasting, live updates, and other real-time Ruby services.