diff --git a/README.md b/README.md index 9f5557c9..64edee33 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,14 @@ # Foxglove SDK -This repo provides libraries and schemas to log and visualize multimodal data with [Foxglove](https://foxglove.dev). +The Foxglove SDK allows you to log and visualize multimodal data with [Foxglove](https://foxglove.dev). -Visit [Foxglove Docs](https://docs.foxglove.dev/) to get started. +The SDK is written in Rust, with bindings and packages available for Python, C, C++, and ROS. + +- Visualize live data using the Foxglove WebSocket protocol +- Write logs to [MCAP](https://mcap.dev/) files for later visualization or analysis +- Leverage built-in [Foxglove schemas](https://docs.foxglove.dev/docs/visualization/message-schemas/introduction) for common visualizations, or log your own custom messages using any supported serialization + +Visit the [Foxglove Docs](https://docs.foxglove.dev/) to get started. ## Packages @@ -11,56 +17,64 @@ Visit [Foxglove Docs](https://docs.foxglove.dev/) to get started. PackageVersionDescription + Python -foxglove-schemas-flatbuffer -[![pypi version](https://shields.io/pypi/v/foxglove-schemas-flatbuffer)](https://pypi.org/project/foxglove-schemas-flatbuffer/) +[foxglove-sdk](./python/foxglove-sdk/) -Compiled flatbuffers - - -foxglove-schemas-protobuf -[![pypi version](https://shields.io/pypi/v/foxglove-schemas-protobuf)](https://pypi.org/project/foxglove-schemas-protobuf/) +[![pypi version](https://shields.io/pypi/v/foxglove-sdk)](https://pypi.org/project/foxglove-sdk/) -Compiled protocol buffers +Foxglove SDK for Python + +C / C++ -foxglove-websocket -[![pypi version](https://shields.io/pypi/v/foxglove-websocket)](https://pypi.org/project/foxglove-websocket/) +[foxglove](./c) + +Foxglove SDK for C + + -Python implementation of the WebSocket protocol
Repo: [foxglove/ws-protocol](https://github.com/foxglove/ws-protocol/tree/main/python) +[foxglove_cpp](./cpp) + +Foxglove SDK for C++ -C++ + +Rust -foxglove-websocket -[![conan version](https://img.shields.io/conan/v/foxglove-websocket)](https://conan.io/center/recipes/foxglove-websocket) +[foxglove](./rust/foxglove) -C++ implementation of the WebSocket protocol
-Repo: [foxglove/ws-protocol](https://github.com/foxglove/ws-protocol/tree/main/cpp) +[![conan version](https://img.shields.io/crates/v/foxglove)](https://crates.io/crates/foxglove) +Foxglove SDK for Rust + ROS -foxglove_msgs + + +[foxglove_msgs](./ros/foxglove_msgs) + + [![ROS Noetic version](https://img.shields.io/ros/v/noetic/foxglove_msgs)](https://index.ros.org/p/foxglove_msgs#noetic)
@@ -69,10 +83,14 @@ Repo: [foxglove/ws-protocol](https://github.com/foxglove/ws-protocol/tree/main/c [![ROS Rolling version](https://img.shields.io/ros/v/rolling/foxglove_msgs)](https://index.ros.org/p/foxglove_msgs#rolling) -Foxglove message definitions for ROS 1 and ROS 2 +Foxglove schemas for ROS -foxglove_bridge + + +[foxglove_bridge](https://github.com/foxglove/ros-foxglove-bridge) + + [![ROS Noetic version](https://img.shields.io/ros/v/noetic/foxglove_bridge)](https://index.ros.org/p/foxglove_bridge#noetic)
@@ -81,16 +99,16 @@ Repo: [foxglove/ws-protocol](https://github.com/foxglove/ws-protocol/tree/main/c [![ROS Rolling version](https://img.shields.io/ros/v/rolling/foxglove_bridge)](https://index.ros.org/p/foxglove_bridge#rolling) +Foxglove bridge for ROS + + +TypeScript + -ROS implementation of the WebSocket protocol
-Repo: [foxglove/ros-foxglove-bridge](https://github.com/foxglove/ros-foxglove-bridge) +[@foxglove/schemas](https://www.npmjs.com/package/@foxglove/schemas) - -JavaScript / TypeScript - -@foxglove/schemas [![npm version](https://img.shields.io/npm/v/@foxglove/schemas)](https://www.npmjs.com/package/@foxglove/schemas) @@ -98,27 +116,20 @@ Repo: [foxglove/ros-foxglove-bridge](https://github.com/foxglove/ros-foxglove-br Foxglove schemas for TypeScript - -@foxglove/ws-protocol - -[![npm version](https://img.shields.io/npm/v/@foxglove/ws-protocol)](https://www.npmjs.com/package/@foxglove/ws-protocol) - - +Other + -TypeScript implementation of the WebSocket protocol
-Repo: [foxglove/ws-protocol](https://github.com/foxglove/ws-protocol/tree/main/typescript/ws-protocol) +[schemas](./schemas) + +Raw schema definitions for ROS, Protobuf, Flatbuffer, JSON, and OMG IDL -### Other - -The [schemas](./schemas) directory contains type definitions for ROS 1, ROS 2, Protobuf, JSON Schema, TypeScript, and OMG IDL. They can be copied and used in your application directly. - ## Stay in touch Join our [Discord community](https://foxglove.dev/chat) to ask questions, share feedback, and stay up to date on what our team is working on.