Foxglove Studio vs. Webviz
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 Studio began as a fork of Cruise’s Webviz project.
Many people are curious about how these two apps compare. While Foxglove Studio 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?
Both Webviz and Foxglove Studio 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.
Both Webviz and Foxglove Studio are available to the wider robotics community at no cost. While Foxglove does offer paid plans for hosted services (i.e. cloud-synced team layouts, remote data storage, etc.), both applications welcome contributions and feedback from any open source user. By being open source, both projects allow any hobbyist, researcher, or engineer to try out the tool before committing to it.
Integrated development environment
Both Webviz and Foxglove Studio 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 Studio 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 Studio drew inspiration from Webviz, we are taking it in a new direction. We are a true community project that collaborates closely with open source contributors – from our colleagues over at Open Robotics, to professional robotics engineers and hobbyists.
a.i. solutions has used Foxglove Studio to visualize data rendered and simulated by their space mission design software FreeFlyer.
Check out the new features we’ve shipped and workflows we’ve unlocked.
Foxglove Studio adds several panels that we learned would be valuable to robotics teams, regardless of industry:
- Map panel – Display sensor_msgs/NavSatFix messages as points on a map.
- Parameters panel – Read and set rosparams from your connected ROS source.
- Topic Graph panel – Display a computational graph of ROS nodes and topics in your data source.
Because Foxglove Studio 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 Studio, open a GitHub issue.
New data sources
While Foxglove Studio and Webviz both support ROS 1 Rosbridge connections and bag files, Foxglove Studio supports several additional data connection options:
- ROS 2 connections (Rosbridge and native)
- ROS 2 bag playback
- Native ROS 1 connections
- Velodyne LiDAR connections
Studio can now connect directly to Velodyne LiDAR hardware to visualize the velodyne scan.
We want to continue expanding our supported data sources! Open a GitHub issue to share any data formats that you'd like to see Foxglove Studio support for.
Cross-platform web and desktop app
We made it easier to get started by making Foxglove Studio 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 Studio using your browser or our desktop app for Linux, macOS, and Windows.
Our web app is great for people who want to try Foxglove Studio 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 studio.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 Studio is available as both a web (Google Chrome) and desktop app (Linux, Windows, macOS).
Foxglove Studio 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 Studio 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.
Custom panel extensions
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 Studio directly.
Foxglove Studio allows you to write custom panels and load them into your local environment.
Most recently, we released Foxglove Data Platform – a scalable new service for managing your organization’s robotics data. It functions as a companion product to Foxglove Studio, and is closely integrated with its visualization and debugging capabilities. Using the convenient web interface, you can locate events of interest, then stream them directly in Foxglove Studio for instant visualization and further analysis.
Foxglove Data Platform provides one central data repository that allows you to upload, explore, and stream your robotics data.
Foxglove Data Platform currently supports ingesting ROS 1 or ROS 2 data, but we are just getting started. Schedule a demo to learn more, or contact us directly to let us know what you’d like to see in the future.
Stay in touch
While we initially drew inspiration from Webviz to accelerate robotics development, we want to expand on what we learned to help Foxglove Studio evolve with the industry.
We’re excited to find other widely useful features to implement – most immediately on the horizon, we plan to expand our extensions API, support more data sources, and flesh out our Foxglove Data Platform capabilities. We’re also continuing to talk with industry decision makers, participate in working groups, and brainstorm 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 check out our docs to see how Studio can accelerate your robotics development.
Organize petabytes of data for easy discovery and analysis.
Share insights across your robotics organization with team layouts.
Get blog posts sent directly to your inbox.