Update on BAGEL: new features and future plans!
Hi again r/ROS,
Following up on my earlier post about BAGEL, a browser-based ROS bag viewer/editor with no native dependencies and no ROS install. Since v1.0 it's grown from a viewer into something closer to a full robotics debugging tool. Quick links for anyone new here:
Link: https://bagel-ros2.vercel.app
Source: https://github.com/Hussain004/BAGEL
Full changelog with design rationale: https://github.com/Hussain004/BAGEL/blob/main/FEATURES.md
What's new since v1.0:
Bag editing (v1.1, v1.2)
- Trim by time range, drop topics you don't need, export a fresh indexed MCAP, all client-side, no CLI.
- Works across every format BAGEL reads: .mcap, ROS2 .db3, and ROS1 .bag all edit down to MCAP now.
URDF robot models and richer 3D (v1.3)
- Drop a URDF (or paste one) and the robot animates in the 3D scene, following the bag's /tf and joint states.
- MESH_RESOURCE and TRIANGLE_LIST markers render real meshes instead of a placeholder.
- CameraInfo overlay (principal point reticle, intrinsics badge), a wireframe camera frustum in the 3D scene, and one-click undistort using the calibration.
- Saved per-data-type display defaults, loop playback, per-camera frustum hide toggles.
Analysis and shareability (v1.4)
- Bag Health dashboard: per-topic Hz, jitter, gaps, and bandwidth with color-coded waately see which topic dropped out or is publishing erratically.
- Inline math expressions as derived plot series (unit conversions, vector magnitudes, bias correction), real tokenizer/AST, no eval.
- Export any panel as a WebM video or PNG sequence for a time window.
- Timeline bookmarks/annotations that round-trip through the share URL.
Live robot data (v1.5)
- The big one: paste a ws:// URL (the same protocol Foxglove Studio and foxglove_bridvery panel updates in real time from a running robot. No ROS install, no account, justa browser tab.
- Record live sessions straight to a proper indexed MCAP from the browser.
- Works over ROS1 bridges too, not just ROS2. - Sim clock (/clock) support, so Gazebo/Isaac Sim sessions get correct timestamps ins
- Cross-bag health comparison when multiple bags are loaded.
Format breadth and RViz parity (v1.6) - Standalone .pcd / .ply viewer, no bag wrapping needed.
- Foxglove Studio's JSON-schema MCAPs (foxglove.* types) decode correctly now instead of showing empty panels.
- WebCodecs-based H264/H265 video decoding for foxglove.CompressedVideo topics.
- Zoom and pan in the image viewer.
What's next?
v1.7 is up next: a 3D measurement tool (click two points, get a distance), nav_msgs/Path rendering, more colormaps, image-on-point-cloud projection using camera intrinsics, then bag merge/split, then QoS inspection (surfacing reliability/durability/history per topic).