Iām excited to share reverse_proxy_plug_websocket, a library for reverse proxying websocket connections in Elixir.
This idea grew out of several tickets filed on the reverse_proxy_plug project around a need to support websockets. This library handles the complexity of:
-
Detecting WebSocket upgrade requests
-
Establishing connections to upstream WebSocket servers
-
Maintaining bidirectional message flow between clients and upstream
-
Managing connection lifecycle and cleanup
It supports Gun and Websockex as adapters for the actual websocket functionality.
Proxying in a language like Elixir allows for dynamic runtime behaviour, described in the README, and (hopefully soon) the ability to rewrite or instrument the data stream itself, as required.
Feedback most welcome!
Links
- Hex
- GitHub:






















