How Foxglove compares to Cruise’s data visualization tool
Note: This article has been updated as of 2024-04-11
If you’re familiar with Foxglove’s history, you may know that many members of our team previously worked at self-driving car company Cruise, and that Foxglove began as a fork of Cruise’s Webviz project.
Many people are curious about how these two apps compare. While Foxglove and Webviz can appear similar at first glance, their capabilities have diverged significantly.
So let’s get into it – where do these applications overlap, and where do they differ?
Web-based
Both Webviz and Foxglove are available as web applications – which means getting started with visualizing your data can be as easy as opening a browser window and navigating to a URL. They’re both built on cutting-edge web technologies like WebGL and WebAssembly to render their rich and interactive visualizations.
Integrated development environment
Both Webviz and Foxglove ease the workflow pains that commonly plague robotics development by integrating the tools for visualizing and debugging robotics data into a single environment. Instead of pulling up multiple tools in separate windows (i.e. rviz, rqt, etc.) to explore your data, you can open one workspace to tackle a variety of workflows.
In both applications, you can choose from a suite of modular panels – that do everything from plot values of interest, render interactive 3D scenes, and drill down into topic messages – to compose tiled layouts. You can then rearrange and configure these panels before sharing the final layout with your teammates. This avoids context switching and keeps you in one seamless development environment, helping you focus on iterating on your robots.
Foxglove and Webviz both offer a suite of configurable panels.
While our goals and development philosophies are similar, Webviz and Foxglove’s features have diverged significantly. Though Webviz is an open source project, Cruise has understandably focused their development on autonomous driving use cases, and the open source components are tightly coupled with proprietary extensions. As a result, there are many outstanding bug reports and feature requests from the community.
While Foxglove drew inspiration from Webviz, we are taking it in a new direction to accelerate the development and advance robotics across the industry. Foxglove collaborates closely with everyone from professional robotics engineers and hobbyists in the open source community to our colleagues at Open Robotics.
a.i. solutions has used Foxglove to visualize data rendered and simulated by their space mission design software FreeFlyer.
Whether you work in agriculture, aerospace, ocean exploration, autonomous driving, or any industry advancing robotics, we want Foxglove to help your team unlock new workflows and iterate more quickly on exciting new technologies. Foxglove’s integrated environment, cross-platform support, and rich visualization and collaboration features make it another powerful tool in your robotics development toolbelt. Check out the new features we’ve shipped and workflows we’ve unlocked:
Foxglove adds several panels that we learned would be valuable to robotics teams, regardless of industry:
Because Foxglove is so modular and flexible, this list of available panels will always be growing! If you have an idea for a general purpose panel that you’d like to add to Foxglove, get in touch or create a custom panel extension (more on that below).
While Foxglove and Webviz both support ROS 1 Rosbridge connections and bag files, Foxglove supports several additional data connection options:
Foxglove can now connect directly to Velodyne LiDAR hardware to visualize the velodyne scan._
We want to continue expanding our supported data sources! Get in touch to share any data formats that you'd like to see Foxglove support.
We made it easier to get started by making Foxglove available as both a web and desktop app. Having worked with ROS, we didn’t like that installing native tools required a very specific environment. But no matter your setup, you can get up and running with Foxglove using your browser or our desktop app for Linux, macOS, and Windows.
Our web app is great for people who want to try Foxglove before downloading the desktop app, or who need a low-friction way to quickly view data from their robots. The barrier to entry is eliminated – you can simply open a browser window and navigate to app.foxglove.dev to start exploring your data.
The desktop app unlocks features like our native ROS connections and custom panel extensions. It allows you to connect directly to TCP sockets and access your local filesystem, which have led to features like native ROS connections and custom panel extensions.
Foxglove is available as both a web (Google Chrome) and desktop app (Linux, Windows, macOS).
Foxglove adds support for creating, editing, and sharing multiple personal layouts. We also announced more collaboration support with our latest release of team layouts. In the same way you can create a Google Drive of shared docs that you can edit and collaborate on with your team, you can now create Foxglove teams to share popular layouts with.
Since roboticists have different workflows to accomplish, we want to provide all the tools needed to build and configure the workspaces to tackle these different tasks.
While we want to provide general purpose robotics tools across specific applications, we know that robotics teams will always have project-specific needs that we may not always be able to address out-of-the-box. In response to this gap, we released custom extensions to empower you to develop your own bespoke panels. Instead of waiting on new features, you can now add custom functionality to your local instance of Foxglove directly.
Foxglove allows you to write custom panels and load them into your local environment.
We hope to support sharing extensions among your team, similar to layouts for teams. We are always expanding on our extensions API – if you have any particular requests, please let us know!
Foxglove's data management capabilities provide a scalable approach for managing your organization’s robotics data. It is integrated directly with all the visualization and debugging capabilities. Using the convenient web interface, you can locate events of interest, then stream them directly for instant visualization and further analysis.
Foxglove provides one central data repository that allows you to upload, explore, and stream your robotics data.
Foxglove currently supports ingesting ROS 1, ROS 2, and MCAP data. Check out the docs for more information on importing data, as well as more details on integrating with custom data formats.
Webviz is available to the robotics community at no cost, with of course the exception of dedicated engineering and support time to keep it running efficiently within your organization.. While Foxglove does offer paid plans, both applications welcome feedback from any user. Foxglove is a commercial offering with a generous free plan and is free to non-profit, educational institutions, and students. To use Foxglove, you can navigate to app.foxglove.dev in a browser, or download the desktop app for Windows, Linux, or macOS. We discuss our development plans across GitHub, Discord, and Twitter, and post community announcements to our blog.
While we initially drew inspiration from Webviz to accelerate robotics development, we are expanding on what we learned to help Foxglove evolve with the industry. We’re excited to find other widely useful features to implement by continuing to talk with industry decision makers, participating in working groups, and brainstorming new ways we can streamline robotics development for everyone.
Regardless of the scale, type, and purpose of your robots, we want to help you spend less time fighting your tools, and more time iterating on your robots. Download the app and get started to see how Foxglove can accelerate your robotics development.
If you have any questions or feedback, you can join our Discord community, or find us on Twitter.