Home

Awesome

Foxglove WebSocket Protocol

This repository provides a protocol specification and reference implementations enabling Foxglove to ingest arbitrary “live” streamed data.

A Foxglove WebSocket server can provide multiple data streams, called channels. When a client subscribes to a channel, it begins receiving messages on that channel. This protocol does not prescribe the messages' data format. Instead, the server specifies each channel's encoding, and the client uses this information to determine whether it can decode that channel's messages. Read the Foxglove documentation for more information on which encodings Foxglove supports.

Implementations are available in the following languages:

LanguageIncludesPackage nameVersion
Pythonserver + examplesfoxglove-websocket
JavaScript/TypeScriptserver + client@foxglove/ws-protocol
JavaScript/TypeScriptexamples@foxglove/ws-protocol-examples
C++server + examplesfoxglove-websocket

Additional resources