Download Latest Version 0.31.1 source code.tar.gz (6.6 MB)
Email in envelope

Get an email when there's a new version of Rerun

Home / 0.30.0
Name Modified Size InfoDownloads / Week
Parent folder
rerun-js-web-viewer-react.tar.gz 2026-02-25 4.4 kB
rerun-js-web-viewer.tar.gz 2026-02-25 13.3 MB
rerun-cli-0.30.0-aarch64-apple-darwin 2026-02-25 166.2 MB
rerun-cli-0.30.0-aarch64-unknown-linux-gnu 2026-02-25 188.0 MB
rerun-cli-0.30.0-x86_64-unknown-linux-gnu 2026-02-25 209.6 MB
rerun-cli-0.30.0-x86_64-pc-windows-msvc.exe 2026-02-25 165.9 MB
rerun_cpp_sdk.zip 2026-02-25 46.1 MB
rerun_cpp_sdk-0.30.0-multiplatform.zip 2026-02-25 46.1 MB
librerun_c-0.30.0-aarch64-apple-darwin.a 2026-02-25 32.5 MB
librerun_c-0.30.0-aarch64-unknown-linux-gnu.a 2026-02-25 50.9 MB
librerun_c-0.30.0-x86_64-unknown-linux-gnu.a 2026-02-25 50.8 MB
rerun_c-0.30.0-x86_64-pc-windows-msvc.lib 2026-02-25 46.7 MB
rerun_sdk-0.30.0-cp310-abi3-win_amd64.whl 2026-02-25 110.0 MB
rerun_sdk-0.30.0-cp310-abi3-manylinux_2_28_x86_64.whl 2026-02-25 127.2 MB
rerun_sdk-0.30.0-cp310-abi3-manylinux_2_28_aarch64.whl 2026-02-25 122.2 MB
rerun_sdk-0.30.0-cp310-abi3-macosx_11_0_arm64.whl 2026-02-25 114.2 MB
rerun_notebook-0.30.0-py2.py3-none-any.whl 2026-02-25 13.3 MB
0.30.0 - Plot any scalar _ on-demand streaming source code.tar.gz 2026-02-25 6.5 MB
0.30.0 - Plot any scalar _ on-demand streaming source code.zip 2026-02-25 10.7 MB
README.md 2026-02-25 25.9 kB
Totals: 20 Items   1.5 GB 1

Rerun is an easy-to-use database and visualization toolbox for multimodal and temporal data. Try it live at https://rerun.io/viewer.


🧳 Migration guide: https://rerun.io/docs/reference/migration/migration-0-30

✨ Overview & highlights

📈 Plot any scalar

https://github.com/user-attachments/assets/cb10e8fd-7428-44ae-9f22-37fd721a357f

You can now plot any scalar value, even if it lacks Rerun semantics in time series views. For instance, this lets you plot any value in an MCAP file.

In addition to plotting scalars from MCAP files, it is now possible to visualize arbitrary scalar components that were logged using AnyValues or DynamicArchetype. The supported data types are:

  • Float32 and Float64
  • Int8, Int16, Int32, and Int64
  • UInt8, UInt16, UInt32, and UInt64
  • Boolean
  • Any of the above nested inside of Arrow structs.

This also makes it possible to log and visualize multiple scalars to the same entity, which can drastically reduce the size of the resulting .rrd files.

Note that by default, and without blueprints, views are still only spawned for entities with Rerun semantics.

Time series views for entities with custom scalar components need to be spawned either:

  • from the context menu of the streams,
  • by adding a view from the blueprint panel,
  • or by specifying a blueprint using the Python or Rust SDK.

The components that should be visualized can be selected via a new dropdown menu from the completely revised visualizer section in the selection panel.

<picture style="zoom: 0.5"> New Source dropdown menu </picture>

To quickly navigate to the desired visualizer, each time series view now shows an overview of it's current visualizers.

<picture> List of visualizer in view selection panel. </picture>

For more details please refer to our documentation:

Thanks to a contribution from @vfilter, the series lines visualizer now also supports different interpolation modes to render staircase (or step) functions:

<picture> Dropdown of different interpolation modes </picture>

📡 On-demand streaming / larger-than-RAM

The Rerun Viewer now supports on-demand streaming, when connected to either the OSS server or Rerun Cloud.

https://github.com/user-attachments/assets/feb0028f-9492-484b-9b07-02280f111699

With on-demand streaming, whatever you are currently viewing will be downloaded first. This includes time-scrubbing to the end of a very long recording and quickly seeing what is there, or viewing only one camera feed of many.

Of course, your memory limit will be respected, and when you change your view or move the time cursor, the stale data will be evicted and the new data downloaded.

This also means that the web viewer can finally view recordings larger than the 4GiB limit enforced by Wasm32, as long as those recordings are served by a Rerun server.

It also means that Rerun Cloud users can view huge recordings, larger than what fits into RAM. The OSS server, however, still loads everything into RAM before serving it.

Usage:

> rerun server -d folder_with_large_recordings

Then either open the native viewer:

> rerun "rerun+http://127.0.0.1:51234"

Or the web viewer:

> rerun --serve-web "rerun+http://127.0.0.1:51234"

🦾 Support for many more MCAP message types

Like in the previous releases, we're continually expanding our support for common robotics data to make it easier for users to load their existing recordings.

This release adds support for Foxglove Protobuf schemas to our built-in MCAP data loader, in addition to the existing set of supported ROS 2 messages.

You can find an overview of all the messages that are currently supported here.

<picture> Complex scene imported from MCAP </picture>

🎨 Extend existing views without forking

Previously, extending the Viewer with custom Rust code required creating an entirely new view type, even if you just wanted to add a single new visualization to the existing 3D view.

Now, you can register custom visualizers that plug directly into existing views, using fully custom archetypes & shaders in the process!

https://github.com/user-attachments/assets/df609f10-5515-49bc-86fd-6940cc25706f

In practice this works currently only well for 2D, 3D, and Map views but we'll keep working towards making the Viewer more and more modular & extensible!

For more details, see the custom visualizer example and the viewer rust extension docs for a general overview.

⚠️ Breaking changes

  • Python: segment_url_udf and segment_url_with_timeref_udf have been removed
  • Python: segment_url parameter names have been updated
  • CLI: .rrd files are no longer tailed by default
  • SDK: SeriesVisible component type has been removed

🧳 Migration guide: https://rerun.io/docs/reference/migration/migration-0-30

🔎 Details

🪵 Log API

  • Fix performance regression with --server-memory-limit 0 cfc9a4c
  • Remove SeriesVisible component in favor of Visible 1fca08a
  • rerun rrd verify now checks for the presence of RRD manifests 2000ba5
  • Footer-preserving RRD routing b56a145

🌊 C++ API

  • Build C++ snippets into a single executable to avoid link time overhead b0a3876

🐍 Python API

  • Basic Rust & Python blueprint API for component mappings c6d7409
  • Ensure that import rerun_sdk.rerun can be used 196c658
  • Expose on_duplicate in the Python SDK e909e20
  • Small conversion improvement 383d37d
  • Table entry APIs: provide a hint for single-row list data cb38397
  • Add hint to prepend api. on connection error a2ef1b3
  • No longer return all columns when filter_content() matches nothing 5997d6f
  • Remove deprecated UDFs b078e18
  • Allow access to redap token from python sdk bc2ce79
  • Expose "rerun_registration_status" to DatasetEntry.manifest() 881cee6
  • Correctly handle lists in AnyValues/DynamicArchetype .columns d2b53da
  • Atomic (un)registrations 153acd1
  • The url argument of CatalogClient.create_table() is now a prefix 1eb6c79
  • notebook: Re-export viewer event types 4c7d978
  • Add entity_paths(), archetypes(), and component_types() methods to Schema 015f1fc
  • Error when querying an unknown index 74a27df
  • Rename rerun-sdk[datafusion] to rerun-sdk[dataplatform] and add pandas dependency b82cd06
  • Add (and document) time range and selection support to segment_url b2e7eff

🦀 Rust API

  • Basic Rust & Python blueprint API for component mappings c6d7409
  • Move URDF joint transform computation to Rust 4e10aea
  • Allow for custom visualizer with custom shader that integrates into existing view + example 3bf7120
  • Improve feature-gating in Rust SDK (removes datafusion & co from the SDK deps) #12659 (thanks @paulzhng!)

🪳 Bug fixes

  • Fix first-person camera having zero speed in zero-sized scenes #12535 (thanks @Shivam-Bhardwaj!)
  • Fix heuristic for target_frame in 3D views for scenes with pinholes & named frames 3c678cc
  • Fix sensor_msgs::PointCloud2 MCAP parser for small pointclouds 6491b95
  • Bug fix: allow copying selected text 4094a91
  • Fix viewer error list jumping around a1c976c
  • Fix potential video deadlock 3827b1d
  • Fix drawing visualizations too often whenever there's multiple visualizer instructions of the same type on an entity 2f52aae
  • Fix table config button symbol for light-mode 55747b5
  • Lenses: Use nullability of input rather than the output d4398f5
  • Ensure we report file loading errors on web febbffc
  • Recover from failing to load RrdManifest ad214ca
  • Fix transparent annotation classes not leading to transparent segmentation image 55578c3
  • Make the "copy" button work for components in the time panel tree 8f788a9
  • Fix deadlock when loading LeRobot datasets #12652
  • Fix NV12/YUYV ROS2 images being incorrectly loaded as depth 04beb77
  • Don't include redo-buffer when saving blueprints 85cc4f9
  • Address issue where .dae with multiple triangle groups is not rendered 83e96bf
  • Don't reset video player on keyframe boundrary for AV1 3bcd9b8
  • Fix mono8/mono16 image channel classification #12660
  • Set AR for wasm development build on macOS 7945601
  • Fix interactions going through popups to the timepanel 1efc8c1
  • Fix arrow key stepping on sequence timeline 1c6a71c
  • Fix bad errors for unknown transform frames from overrides & view target frame 36ab981

🌁 Viewer improvements

  • Extract Selectors from (nested) StructArray fields 8319663
  • Video player fetching missing chunks and less memory usage with big gops 2596f4e
  • Stop offering to visualize static scalar data as time series (would previously emitting a visualization error) cc8c82c
  • Source selector for visualizer components #12548
  • Implement Selector when resolving component mappings 81879fd
  • New (simpler) heuristic for spawning time series views 53fc1fe
  • Show at most 20 time series plots per entity, hide legend for more than 20 plots b103ed5
  • Visualizers can now report warnings & multiple errors 67f8ef1
  • Populate source mappings with nested struct fields in time series 7365386
  • Add ListArray support for field extraction into Selectors 6f769d6
  • Adds visualizer list to time series view selection 127efa6
  • Make labels in spatial view translucent 2c376b1
  • Fix sometimes not showing correct values in visualizer ui a4839ce
  • Show error when rerun_js viewer panics or fails to load 3f7a96d
  • Visualizer list now shows color codes for time series data 2a4ef19
  • Tweak spawn_heuristics and recommended_visualizers for time series views cebc107
  • Fix color array display, allow editing color arrays in some cases 1e17b86
  • Move Visualizer list above View properties in selection panel be57aca
  • Visualizers can be deleted right from the visualizer list 0c57f9e
  • Show the root transform when visualizing transform trees 84388a9
  • RecommendedVisualizer now contains all nested Float*Arrays 27a7fbd
  • Different severities for video decoder errors 384c078
  • Fix showing fallback values for empty required components in visualizer UI c8bf060
  • Fix plot legend items disappearing when they have the same name 9c95786
  • Visualizers can be added right from a view's selection 2e0f4cf
  • Make columns reorderable by entity in the dataframe view e1e439e
  • Allow loading arbitrary data loader files (mcaps, pngs, ...) via http urls a02a22b
  • Drop cached videos once all referencing episodes are loaded #12653
  • Add auto-scroll feature and time indicator to the dataframe view 514f1f3
  • Add InterpolationMode component for step function rendering #12657 (thanks @vfilter!)
  • Allow loading extensionless http urls via magic bytes detection daf7a35
  • Fixes performance issue of too many time series plots a74b382
  • Suppport (U)Int16 in time series plots 6bb58e4

🗄️ OSS server

  • Test handling of schema conflict and make OSS server compliant c618910
  • Fix table entry name leaking upon creation failure af77d4e

🚀 Performance improvements

  • Improve memory budgeting ce48297
  • Only initialize the transform cache for the active timeline a2f945b
  • Remove larger-than-ram feature flag a4a8d56
  • Fix: don't reload meshes after a GC 0259c43
  • Do faster lineage check in release builds e9c0def
  • Optimization: skip calculating size of time histogram 33a492d
  • Change VideoStreamCache eviction policy: keep cache around until GC d517c3c
  • Change default plot bounds to follow time cursor d2cf5d2
  • Make handling of out of order video chunks much faster f050460

🧑‍🏫 Examples

📚 Docs

  • Add a disambiguation from RViz to the README 90faabb
  • Add snippet demonstrating conversion of custom mcap protobuf file to rrd ebd731c
  • Adding snippet to convert mcap with send_column f2b3770
  • Adding urdf import support to protobuf convert snippets 8be967d
  • Add documentation for converting custom data to rrd using log/send_column f8cf13c
  • Update MCAP message support documentation a77922a
  • Add layer identifier "foxglove" to rerun mcap convert 1436027

🖼 UI improvements

  • Show that other timelines have data on timeline loader 47bf28f
  • Improve error messages regarding arrow datatypes b3c395e
  • Fix moving text cursor with cmd-arrows cd90f34
  • Don't auto-pause when moving time cursor 647cd11
  • Value previews in source dropdown 6d41da9
  • Only allow ui edits of visualizer components where they actually have an impact b3fa1fc

🕸️ Web

  • Expose theme setting on web-viewer notebook beaee9c
  • react-web-viewer: improve parameter handling logic 07a76ca

🧢 MCAP

  • Support some Foxglove messages in MCAP data loader via lenses 7e05213
  • Support Foxglove Log protobuf message in MCAP loader f7cdf09
  • Support foxglove.FrameTransform in MCAP data loader a018942
  • Support foxglove.RawImage in MCAP data loader ff7db99
  • Support foxglove.PointCloud in MCAP data loader 9e8e34b
  • Add ROS2 MCAP support for Float64Array, Float64MultiArray, and Joy messages 512d0e6

🤷‍ Other

  • Refactor add to new view section 8871a13
  • Add rerun auth logout 7b3ae54
  • rerun rrd split 9bde24f
  • Add --follow option to explicitly follow files and URLs c34a84b
Source: README.md, updated 2026-02-25