Getting Started
There are many different ways of sending data to the Rerun Viewer depending on what you're trying to achieve and whether the viewer is running in the same process as your code, in another process, or even as a separate web application.
Checkout SDK Operating Modes for an overview of what's possible and how.
Supported Python Versions
Rerun will typically support Python version up until their end-of-life. If you are using an older version of Python, you can use the table below to make sure you choose the proper Rerun version for your Python installation.
| Rerun Version | Release Date | Supported Python Version |
|---|---|---|
| 0.32 | May. 13, 2026 | 3.10+ |
| 0.31 | Mar. 31, 2026 | 3.10+ |
| 0.30 | Feb. 25, 2026 | 3.10+ |
| 0.29 | Jan. 30, 2026 | 3.10+ |
| 0.28 | Dec. 18, 2025 | 3.10+ |
| 0.27 | Nov. 10, 2025 | 3.10+ |
| 0.26 | Oct. 13, 2025 | 3.9+ |
| 0.25 | Sep. 16, 2025 | 3.9+ |
| 0.24 | Jul. 17, 2025 | 3.9+ |
| 0.23 | Apr. 24, 2025 | 3.9+ |
| 0.22 | Feb. 6, 2025 | 3.9+ |
| 0.21 | Dec. 18. 2024 | 3.9+ |
| 0.20 | Nov. 14, 2024 | 3.9+ |
| 0.19 | Oct. 17, 2024 | 3.8+ |
APIs
Initialization functions
| Function | Description |
|---|---|
rerun.init() |
Initialize the Rerun SDK with a user-chosen application id (name). |
rerun.set_sinks() |
Stream data to multiple different sinks. |
rerun.connect_grpc() |
Connect to a remote Rerun Viewer on the given URL. |
rerun.disconnect() |
Closes all gRPC connections, servers, and files. |
rerun.save() |
Stream all log-data to a file. |
rerun.send_blueprint() |
Create a blueprint from a BlueprintLike and send it to the RecordingStream. |
rerun.serve_grpc() |
Serve log-data over gRPC. |
rerun.serve_web_viewer() |
Host a web viewer over HTTP. |
rerun.spawn() |
Spawn a Rerun Viewer, listening on the given port. |
rerun.memory_recording() |
Streams all log-data to a memory buffer. |
rerun.notebook_show() |
Output the Rerun viewer in a notebook using IPython IPython.core.display.HTML. |
rerun.legacy_notebook_show() |
Output the Rerun viewer in a notebook using IPython IPython.core.display.HTML. |
| Class | Description |
|---|---|
rerun.ChunkBatcherConfig |
Defines the different batching thresholds used within the RecordingStream. |
rerun.DescribedComponentBatch |
A ComponentBatchLike object with its associated ComponentDescriptor. |
rerun.RecordingStream |
A RecordingStream is used to send data to Rerun. |
rerun.TimeColumnLike |
Describes interface for objects that can be converted to a column of rerun time values. |
Logging functions
| Function | Description |
|---|---|
rerun.log() |
Log data to Rerun. |
rerun.log_file_from_path() |
Logs the file at the given path using all Importers available. |
rerun.log_file_from_contents() |
Logs the given file_contents using all Importers available. |
Property functions
| Function | Description |
|---|---|
rerun.send_property() |
Send a property of the recording. |
rerun.send_recording_name() |
Send the name of the recording. |
rerun.send_recording_start_time_nanos() |
Send the start time of the recording. |
Timeline functions
| Function | Description |
|---|---|
rerun.set_time() |
Set the current time of a timeline for this thread. |
rerun.disable_timeline() |
Clear time information for the specified timeline on this thread. |
rerun.reset_time() |
Clear all timeline information on this thread. |
Columnar API
| Function | Description |
|---|---|
rerun.send_columns() |
Send columnar data to Rerun. |
rerun.send_record_batch() |
Coerce a single pyarrow RecordBatch to Rerun structure. |
rerun.send_dataframe() |
Coerce a pyarrow RecordBatchReader or Table to Rerun structure. |
| Class | Description |
|---|---|
rerun.TimeColumn |
A column of index (time) values. |
General
| Class | Description |
|---|---|
rerun.Clear |
Archetype: Empties all the components of an entity. |
rerun.blueprint.archetypes.EntityBehavior |
Archetype: General visualization behavior of an entity. |
rerun.archetypes.RecordingInfo |
Archetype: A list of properties associated with a recording. |
Annotations
| Class | Description |
|---|---|
rerun.AnnotationContext |
Archetype: The annotation context provides additional information on how to display entities. |
rerun.AnnotationInfo |
Datatype: Annotation info annotating a class id or key-point id. |
rerun.ClassDescription |
Datatype: The description of a semantic Class. |
Images
| Class | Description |
|---|---|
rerun.DepthImage |
Archetype: A depth image, i.e. as captured by a depth camera. |
rerun.Image |
Archetype: A monochrome or color image. |
rerun.EncodedImage |
Archetype: An image encoded as e.g. a JPEG or PNG. |
rerun.EncodedDepthImage |
Archetype: A depth image encoded with a codec (e.g. RVL or PNG). |
rerun.SegmentationImage |
Archetype: An image made up of integer components.ClassIds. |
Video
| Class | Description |
|---|---|
rerun.VideoStream |
Archetype: Video stream consisting of raw video chunks. |
rerun.AssetVideo |
Archetype: A video binary. |
rerun.VideoFrameReference |
Archetype: References a single video frame. |
Plotting
| Class | Description |
|---|---|
rerun.BarChart |
Archetype: A bar chart. |
rerun.Scalars |
Archetype: One or more double-precision scalar values, e.g. for use for time-series plots. |
rerun.SeriesLines |
Archetype: Define the style properties for one or more line series in a chart. |
rerun.SeriesPoints |
Archetype: Define the style properties for one or more point series (scatter plot) in a chart. |
Spatial Archetypes
| Class | Description |
|---|---|
rerun.Arrows3D |
Archetype: 3D arrows with optional colors, radii, labels, etc. |
rerun.Arrows2D |
Archetype: 2D arrows with optional colors, radii, labels, etc. |
rerun.Asset3D |
Archetype: A prepacked 3D asset (.gltf, .glb, .obj, .stl, etc.). |
rerun.Boxes2D |
Archetype: 2D boxes with half-extents and optional center, colors etc. |
rerun.Boxes3D |
Archetype: 3D boxes with half-extents and optional center, rotations, colors etc. |
rerun.Capsules3D |
Archetype: 3D capsules; cylinders with hemispherical caps. |
rerun.Cylinders3D |
Archetype: 3D cylinders with flat caps. |
rerun.Ellipses2D |
Archetype: 2D ellipses with half-extents (semi-axes) and optional center, colors etc. |
rerun.Ellipsoids3D |
Archetype: 3D ellipsoids or spheres. |
rerun.GridMap |
Archetype: A 2D grid map stored as raster data in an image buffer, with a cell size in scene units and pose. |
rerun.LineStrips2D |
Archetype: 2D line strips with positions and optional colors, radii, labels, etc. |
rerun.LineStrips3D |
Archetype: 3D line strips with positions and optional colors, radii, labels, etc. |
rerun.Mesh3D |
Archetype: A 3D triangle mesh as specified by its per-mesh and per-vertex properties. |
rerun.Points2D |
Archetype: A 2D point cloud with positions and optional colors, radii, labels, etc. |
rerun.Points3D |
Archetype: A 3D point cloud with positions and optional colors, radii, labels, etc. |
rerun.TransformAxes3D |
Archetype: A visual representation of a archetypes.Transform3D. |
Geospatial Archetypes
| Class | Description |
|---|---|
rerun.GeoLineStrings |
Archetype: Geospatial line strings with positions expressed in EPSG:4326 latitude and longitude (North/East-positive degrees), and optional colors and radii. |
rerun.GeoPoints |
Archetype: Geospatial points with positions expressed in EPSG:4326 latitude and longitude (North/East-positive degrees), and optional colors and radii. |
Graphs
| Class | Description |
|---|---|
rerun.GraphNodes |
Archetype: A list of nodes in a graph with optional labels, colors, etc. |
rerun.GraphEdges |
Archetype: A list of edges in a graph. |
Tensors
| Class | Description |
|---|---|
rerun.Tensor |
Archetype: An N-dimensional array of numbers. |
Text
| Class | Description |
|---|---|
rerun.LoggingHandler |
Provides a logging handler that forwards all events to the Rerun SDK. |
rerun.TextDocument |
Archetype: A text element intended to be displayed in its own text box. |
rerun.TextLog |
Archetype: A log entry in a text log, comprised of a text body and its log level. |
State timeline
| Class | Description |
|---|---|
rerun.StateChange |
Archetype: A state change, representing a transition of an entity into a new state. |
rerun.StateConfiguration |
Archetype: Define the style and mapping for state values in a state timeline view. |
Transforms and Coordinate Systems
| Class | Description |
|---|---|
rerun.Pinhole |
Archetype: Camera perspective projection (a.k.a. intrinsics). |
rerun.Transform3D |
Archetype: A transform between two 3D spaces, i.e. a pose. |
rerun.InstancePoses3D |
Archetype: One or more transforms applied on the current entity's transform frame. |
rerun.ViewCoordinates |
Archetype: How we interpret the coordinate system of an entity/space. |
rerun.Scale3D |
Component: A 3D scale factor. |
rerun.Quaternion |
Datatype: A Quaternion represented by 4 real numbers. |
rerun.RotationAxisAngle |
Datatype: 3D rotation represented by a rotation around a given axis. |
rerun.CoordinateFrame |
Archetype: Specifies the coordinate frame for an entity. |
MCAP
| Class | Description |
|---|---|
rerun.McapChannel |
Archetype: A channel within an MCAP file that defines how messages are structured and encoded. |
rerun.McapMessage |
Archetype: The binary payload of a single MCAP message, without metadata. |
rerun.McapSchema |
Archetype: A schema definition that describes the structure of messages in an MCAP file. |
rerun.McapStatistics |
Archetype: Recording-level statistics about an MCAP file. |
Interfaces
| Class | Description |
|---|---|
rerun.ComponentMixin |
Makes components adhere to the ComponentBatchLike interface. |
rerun.ComponentBatchLike |
Describes interface for objects that can be converted to batch of rerun Components. |
rerun.AsComponents |
Describes interface for interpreting an object as a bundle of Components. |
rerun.ComponentColumn |
A column of components that can be sent using send_columns. |
Script Helpers
| Function | Description |
|---|---|
rerun.script_add_args() |
Add common Rerun script arguments to parser. |
rerun.script_setup() |
Run common Rerun script setup actions. Connect to the viewer if necessary. |
rerun.script_teardown() |
Run common post-actions. Sleep if serving the web viewer. |
Other classes and functions
| Function | Description |
|---|---|
rerun.get_data_recording() |
Returns the most appropriate recording to log data to, in the current context, if any. |
rerun.get_global_data_recording() |
Returns the currently active global recording, if any. |
rerun.get_recording_id() |
Get the recording ID that this recording is logging to, as a UUIDv4, if any. |
rerun.get_thread_local_data_recording() |
Returns the currently active thread-local recording, if any. |
rerun.is_enabled() |
Is this Rerun recording enabled. |
rerun.set_global_data_recording() |
Replaces the currently active global recording with the specified one. |
rerun.set_thread_local_data_recording() |
Replaces the currently active thread-local recording with the specified one. |
rerun.start_web_viewer_server() |
Start an HTTP server that hosts the rerun web viewer. |
rerun.escape_entity_path_part() |
Escape an individual part of an entity path. |
rerun.new_entity_path() |
Construct an entity path, defined by a list of (unescaped) parts. |
rerun.thread_local_stream() |
Create a thread-local recording stream and use it when executing the decorated function. |
rerun.recording_stream_generator_ctx() |
Decorator to manage recording stream context for generator functions. |
| Class | Description |
|---|---|
rerun.MemoryRecording |
A recording that stores data in memory. |
rerun.BinaryStream |
An encoded stream of bytes that can be saved as an rrd or sent to the viewer. |
rerun.GrpcSink |
Used in rerun.RecordingStream.set_sinks. |
rerun.FileSink |
Used in rerun.RecordingStream.set_sinks. |
Troubleshooting
You can set RUST_LOG=debug before running your Python script
and/or rerun process to get some verbose logging output.
If you run into any issues don't hesitate to open a ticket or join our Discord.