Rerun is an easy-to-use database and visualization toolbox for multimodal and temporal data.
Try it live at https://rerun.io/viewer.
- Python:
pip install -U rerun-sdk - Rust:
cargo add rerunandcargo install rerun-cli --locked - Online demo: https://rerun.io/viewer
- C++ FetchContent: https://github.com/rerun-io/rerun/releases/download/0.35.0/rerun_cpp_sdk.zip
🧳 Migration guide: https://rerun.io/docs/changelog/changeset-0-36#breaking-changes
✨ Overview & highlights
- Experimental 3D gaussian splat support
- Experimental Viewer catalog: larger-than-RAM files on the web
- Configurable axes for 3D views
- Improved viewer timeline navigation
- Multi-sink support for
GrpcServerSink
📖 Release notes: https://rerun.io/docs/changelog/changeset-0-36#highlights
⚠️ Breaking changes
- All SDKs: application IDs now follow the same restrictions as catalog entry names.
Use at most 180 characters, and only ASCII alphanumerics, underscores, hyphens, spaces, brackets, and colons. - CLI:
rerun mcap infonow prints detailed file information; the diagnostic checks moved torerun mcap check. - Python: the experimental
ParquetReader's loading options moved from the constructor tostream().
🧳 Migration guide: https://rerun.io/docs/changelog/changeset-0-36#breaking-changes
🔎 Details
🪵 Log API
ViewDiris now a regular (codegen'ed) enum instead of a set of constants 0f6d842- Experimental GaussianSplats3D archetype w/ PLY loader 73d305c
- Add an alternative
Costmapcolormap forGridMap033d6f9 - Migrate
ApplicationIdto always beEntryNamecompatible ba6ff46
🌊 C++ API
- Add missing standard library includes to C++ error handling (previously an issue for VS2017) #12872 (thanks @Travor278!)
- Make
GrpcServerSinkmultisink compatible and plumb it into C++ & Python 514a49b rerun_cis now a public dependency ofrerun_cpp5fcb022- Fix C++ issues found by newer
clangtoolchains ef56603 - Update C++ toolchain of Pixi workspace b3e60d6
🐍 Python API
- Add
root_grouptoHdf5Reader.stream()3d4f394 - dataloader: block-wise shuffling strategy d959ca3
- dataloader: Fix read group overfetch 42ee525
- Adds
Chunk.from_property()to Chunk API 9557a7a - Memory-bounded chunk streaming in
Hdf5Readerusing windowed dataset reads 55b95fd - Add Pytorch dataloader manifest builder 4c92c4c
- Make
GrpcServerSinkmultisink compatible and plumb it into C++ & Python 514a49b ParquetReader: move data conversion knobs from the constructor to.stream()43ff07a- Implementation of the manifest dataset 94070ea
- Expose
McapInfoin Python binding viaMcapReader.info()3850ed1 - Make the buffer size part of the shuffling strategy ea24f6a
- Parallelize the video decoding per field a8922fa
🦀 Rust API
- Make
GrpcServerSinkmultisink compatible and plumb it into C++ & Python 514a49b
🪳 Bug fixes
- Better error message when file saving already in progress 3d74aed
- Fix rrd loading progress desyncing d340782
- Fix negative playback speed & frame delay on time cursor boundary clamping a2cbae5
- Avoid main loop starvation by yielding during gRPC reads and apply backpressure 6e9c061
- Send
BlueprintActivationCommandin right order fornewest_first3fbef01 - Fix LeRobot v3 episodes loading in nondeterministic order 7c6edbb
- Fix Rerun window missing decorations (title bar) on Linux 5392400
- Fix
--detach-processfor standalone CLI #12873 (thanks @Travor278!) - manifest-registry: serve RRD manifests as presigned direct URLs ac11345
- Fix incorrect chunk sorting warnings when concatting chunks (during compaction) 4a607f1
- Fix single-fire log messages not showing up in viewer notifications 65b93e9
🌁 Viewer improvements
- Playhead navigation dropdown 1f8a30f
- Support HTTP/HTTPS mesh URLs in URDF importer e64b4eb
- Time series: warn when scalar series count changes #12802 (thanks @waamm!)
- Enable HTTP/2 keepalive pings on the gRPC server 4c969c6
- Implement lazy loading of RRDs into server on Wasm b38a039
- Configurable coordinate axes property for 3D view 9a723e9
- Improve dropped file handling on web for internal catalog ba24887
- Handle manifest fetching via URLs 09a8516
🧑🏫 Examples
- Make raw_mesh example demonstrate both
Asset3DandMesh3D6986e8b
📚 Docs
🎨 Renderer improvements
- Gaussian splat renderer in re_renderer (EWA splatting) 0fba9d2
- Spherical harmonics for gaussian splats 4f50053
🧢 MCAP
- Add
McapFileabstraction with cached derivedMcapInfob613eb5 - CLI: improve
mcap infoand move checks tomcap check147668d - Move ROS & Foxglove lenses to
re_lenses5f1ba60
🗣 Refactors
- Unify
Fileloading paths across web and native 8399e93
📦 Dependencies
- Update Lance, DataFusion dependencies b56a402
- Bump hdf5-pure 0.24.0 → 0.30.0 to add lzf compression support 4d4333c
- Bump hdf5-pure 0.30 -> 0.33 for better displays of dtypes cf93e36