Source: https://seerepo.com/r/rerun-io/rerun/built
Markdown source: https://seerepo.com/r/rerun-io/rerun/built.md
Description: rerun is a Rust repo built with axum, axum-core, egui, Tokio, eframe, and 5 more. It signs people in with jsonwebtoken and hmac.

# What is rerun built with?

rerun is a Rust repo built with axum, axum-core, egui, Tokio, eframe, and 5 more. It signs people in with jsonwebtoken and hmac, uses AI through agent-client-protocol-schema, agent-client-protocol, rig-core, and rmcp, makes its content with image, parquet, infer, tiff, pillow, and 6 more, validates its data with schemars, is tested with insta, similar-asserts, and @playwright/test, deploys with tracing-core, tracing, tracing-subscriber, OpenTelemetry, log, and 10 more, and uses concurrent-queue, object_store, arrow, pyarrow, datafusion, and 1 more. It has 940,997 written lines, with 694 test files.

Read on November 12, 2026, at commit 4450ce0.

Repository: https://github.com/rerun-io/rerun

## Frontend (/)

### Styles

- **font-types**

### Interface

- **accesskit**
- **[console](https://seerepo.com/uses/console)**
- **egui-winit**
- **epaint**
- **vello_cpu**
- **wgpu-hal**
- **[winit](https://seerepo.com/uses/winit)**
- **[wgpu](https://seerepo.com/uses/wgpu)**: 66 files
- **[egui_extras](https://seerepo.com/uses/egui-extras)**: 12 files
- **[rfd](https://seerepo.com/uses/rfd)**: 5 files
- **egui-wgpu**: 4 files
- **[comfy-table](https://seerepo.com/uses/comfy-table)**: 3 files
- **egui_commonmark**: 2 files
- **[indicatif](https://seerepo.com/uses/indicatif)**: 2 files
- **[wayland-client](https://seerepo.com/uses/wayland-client)**: 1 file

## Backend (/)

### The base

- **[axum](https://seerepo.com/uses/axum)**: 7 files

### Data

- **concurrent-queue**
- **[object_store](https://seerepo.com/uses/object-store)**
- **[arrow](https://seerepo.com/uses/arrow)**: 713 files
- **[pyarrow](https://seerepo.com/uses/pyarrow)**: 219 files
- **[datafusion](https://seerepo.com/uses/datafusion)**: 48 files
- **lance**: 3 files

### Sign-in

- **[jsonwebtoken](https://seerepo.com/uses/jsonwebtoken)**: 7 files
- **[hmac](https://seerepo.com/uses/hmac)**: 2 files

### AI

- **agent-client-protocol-schema**: 19 files
- **[agent-client-protocol](https://seerepo.com/uses/agent-client-protocol)**: 3 files
- **rig-core**: 1 file
- **[rmcp](https://seerepo.com/uses/rmcp)**: 1 file

## Support (/)

### The base

- **axum-core**
- **[egui](https://seerepo.com/uses/egui)**: 371 files
- **[Tokio](https://seerepo.com/uses/tokio)**: 80 files
- **[eframe](https://seerepo.com/uses/eframe)**: 18 files
- **[tower](https://seerepo.com/uses/tower)**: 13 files
- **tiny_http**: 3 files
- **[objc2-app-kit](https://seerepo.com/uses/objc2-app-kit)**: 1 file
- **[objc2-foundation](https://seerepo.com/uses/objc2-foundation)**: 1 file

### Content

- **[image](https://seerepo.com/uses/image)**: 25 files
- **[parquet](https://seerepo.com/uses/parquet)**: 7 files
- **[infer](https://seerepo.com/uses/infer)**: 4 files
- **tiff**: 4 files
- **[pillow](https://seerepo.com/uses/pillow)**: 3 files
- **dav1d**: 2 files
- **gltf**: 1 file
- **mime_guess2**: 1 file
- **[pulldown-cmark](https://seerepo.com/uses/pulldown-cmark)**: 1 file
- **[symphonia](https://seerepo.com/uses/symphonia)**: 1 file
- **[zip](https://seerepo.com/uses/zip)**: 1 file

### Validation

- **[schemars](https://seerepo.com/uses/schemars)**: 1 file

### Testing

- **insta**: 34 files
- **similar-asserts**: 21 files
- **@playwright/test**: 1 file

### Deploy

- **tracing-core**
- **[tracing](https://seerepo.com/uses/tracing)**: 325 files
- **[tracing-subscriber](https://seerepo.com/uses/tracing-subscriber)**: 11 files
- **[OpenTelemetry](https://seerepo.com/uses/opentelemetry)**: 7 files
- **[log](https://seerepo.com/uses/log)**: 5 files
- **[tracing-opentelemetry](https://seerepo.com/uses/tracing-opentelemetry)**: 4 files
- **tracing-tracy**: 3 files
- **[prometheus-client](https://seerepo.com/uses/prometheus-client)**: 2 files
- **[psutil](https://seerepo.com/uses/psutil)**: 2 files
- **env_filter**: 1 file
- **opentelemetry-appender-tracing**: 1 file
- **[opentelemetry-http](https://seerepo.com/uses/opentelemetry-http)**: 1 file
- **[opentelemetry-otlp](https://seerepo.com/uses/opentelemetry-otlp)**: 1 file
- **[tracing-log](https://seerepo.com/uses/tracing-log)**: 1 file
- **tracing-web**: 1 file

### Tools

- **clap_builder**
- **naga**
- **profiling**
- **wgpu-core-deps-apple**
- **clap**: 24 files
- **document-features**: 15 files
- **puffin**: 10 files
- **typing-extensions**: 5 files
- **egui_inspection**: 2 files
- **memory-stats**: 2 files
- **paste**: 2 files
- **num-derive**: 1 file
- **proc-macro-crate**: 1 file
- **proc-macro2**: 1 file
- **puffin_http**: 1 file
- **quote**: 1 file
- **seq-macro**: 1 file
- **syn**: 1 file

### Other

- **aho-corasick**
- **arrow-array**
- **arrow-cast**
- **arrow-ipc**
- **arrow-schema**
- **chrono**
- **crossbeam-channel**
- **crossbeam-deque**
- **crossbeam-epoch**
- **crossbeam-queue**
- **crossbeam-utils**
- **datafusion-common**
- **datafusion-expr**
- **digest**
- **either**
- **errno**
- **event-listener**
- **fastrand**
- **flate2**
- **foldhash**
- **form_urlencoded**
- **futures-channel**
- **futures-core**
- **futures-executor**
- **futures-io**
- **futures-sink**
- **futures-task**
- **gpu-allocator**
- **hashbrown**
- **httparse**
- **Hyper**
- **hyper-rustls**
- **hyper-util**
- **icu_locale_core**
- **icu_provider**
- **linux-raw-sys**
- **lock_api**
- **matrixmultiply**
- **memchr**
- **mime_guess**
- **miniz_oxide**
- **mio**
- **num-complex**
- **objc2-core-foundation**
- **objc2-core-graphics**
- **objc2-io-kit**
- **once_cell**
- **petgraph**
- **phf_shared**
- **regex**
- **regex-automata**
- **regex-syntax**
- **rustix**
- **rustls-webpki**
- **security-framework-sys**
- **serde_core**
- **serde_with**
- **simd-adler32**
- **similar**
- **slab**
- **stable_deref_trait**
- **sync_wrapper**
- **tinystr**
- **tokio-rustls**
- **toml**
- **toml_parser**
- **tungstenite**
- **twox-hash**
- **wayland-sys**
- **winapi**
- **windows**
- **windows-collections**
- **windows-core**
- **windows-future**
- **windows-numerics**
- **windows-strings**
- **windows-sys**
- **winnow**
- **writeable**
- **yoke**
- **zerocopy**
- **zeroize**
- **zstd**
- **zstd-safe**
- **zstd-sys**
- **itertools**: 233 files
- **nohash-hasher**: 201 files
- **thiserror**: 168 files
- **attrs**: 166 files
- **NumPy**: 165 files
- **ahash**: 154 files
- **glam**: 133 files
- **anyhow**: 130 files
- **bytemuck**: 129 files
- **serde**: 112 files
- **parking_lot**: 91 files
- **tonic**: 64 files
- **crossbeam**: 60 files
- **smallvec**: 59 files
- **serde_json**: 57 files
- **pyo3**: 56 files
- **futures**: 52 files
- **url**: 51 files
- **ecolor**: 48 files
- **jiff**: 41 files
- **web-time**: 40 files
- **prost**: 35 files
- **half**: 28 files
- **tokio-stream**: 26 files
- **tempfile**: 24 files
- **uuid**: 22 files
- **web-sys**: 20 files
- **async-trait**: 18 files
- **strum**: 17 files
- **vec1**: 17 files
- **emath**: 16 files
- **http**: 16 files
- **mint**: 16 files
- **static_assertions**: 16 files
- **bytes**: 14 files
- **rayon**: 14 files
- **slotmap**: 14 files
- **ehttp**: 12 files
- **wasm-bindgen**: 12 files
- **js-sys**: 10 files
- **base64**: 9 files
- **bitflags**: 9 files
- **enumset**: 9 files
- **strum_macros**: 9 files
- **poll-promise**: 8 files
- **semver**: 8 files
- **rand**: 7 files
- **getrandom**: 6 files
- **indexmap**: 6 files
- **ndarray**: 6 files
- **sha2**: 6 files
- **lz4_flex**: 5 files
- **num-traits**: 5 files
- **reqwest**: 5 files
- **tokio-util**: 5 files
- **async-stream**: 4 files
- **byteorder**: 4 files
- **ffmpeg-sidecar**: 4 files
- **futures-util**: 4 files
- **libc**: 4 files
- **memmap2**: 4 files
- **ordered-float**: 4 files
- **prost-types**: 4 files
- **tonic-prost**: 4 files
- **tower-http**: 4 files
- **camino**: 3 files
- **clean-path**: 3 files
- **directories**: 3 files
- **http-body**: 3 files
- **opentelemetry-proto**: 3 files
- **percent-encoding**: 3 files
- **prost-reflect**: 3 files
- **regex-lite**: 3 files
- **rustls**: 3 files
- **serde-wasm-bindgen**: 3 files
- **shell-words**: 3 files
- **tonic-types**: 3 files
- **unindent**: 3 files
- **webbrowser**: 3 files
- **xxhash-rust**: 3 files
- **backtrace**: 2 files
- **bincode**: 2 files
- **mimalloc**: 2 files
- **notify**: 2 files
- **ron**: 2 files
- **tap**: 2 files
- **tonic-web**: 2 files
- **tonic-web-wasm-client**: 2 files
- **walkdir**: 2 files
- **arrayvec**: 1 file
- **bit-vec**: 1 file
- **const_format**: 1 file
- **convert_case**: 1 file
- **fixed**: 1 file
- **gilrs**: 1 file
- **hexasphere**: 1 file
- **libloading**: 1 file
- **linked-hash-map**: 1 file
- **natord**: 1 file
- **nucleo-matcher**: 1 file
- **objc2**: 1 file
- **pin-project-lite**: 1 file
- **rand_distr**: 1 file
- **raw-window-handle**: 1 file
- **ring**: 1 file
- **serde_path_to_error**: 1 file
- **signature**: 1 file
- **sysinfo**: 1 file
- **tonic-reflection**: 1 file
- **tower-service**: 1 file
- **typenum**: 1 file
- **ureq**: 1 file
- **wasm-bindgen-futures**: 1 file
- **wayland-protocols**: 1 file
- **wildmatch**: 1 file

## Frontend (rerun_js/web-viewer-react)

### The base

- **[React](https://seerepo.com/uses/react)**: 1 file

## Support (rerun_js/web-viewer)

### Tools

- **esbuild**: 1 file
- **typedoc**: 1 file

### Other

- **@bufbuild/protobuf**: 1 file

## Frontend (rerun_notebook)

### Interface

- **anywidget**: 1 file

## Support (rerun_notebook)

### Testing

- **[pyarrow](https://seerepo.com/uses/pyarrow)**: 2 files

### Tools

- **ipykernel**
- **@anywidget/types**: 1 file
- **esbuild**: 1 file

## Other repos with a similar stack

- [openai/codex](https://seerepo.com/r/openai/codex/built): axum, Tokio, tower, tiny_http, objc2-app-kit, objc2-foundation, jsonwebtoken, hmac, rmcp, image, pulldown-cmark, symphonia, zip, schemars, tracing, tracing-subscriber, OpenTelemetry, log, tracing-opentelemetry, opentelemetry-appender-tracing, opentelemetry-http, opentelemetry-otlp · [Compare](https://seerepo.com/compare/openai/codex/vs/rerun-io/rerun)
- [openinterpreter/openinterpreter](https://seerepo.com/r/openinterpreter/openinterpreter/built): axum, Tokio, tower, tiny_http, objc2-app-kit, objc2-foundation, jsonwebtoken, hmac, agent-client-protocol, rmcp, image, pulldown-cmark, symphonia, zip, schemars, tracing, tracing-subscriber, OpenTelemetry, log, tracing-opentelemetry, opentelemetry-appender-tracing, opentelemetry-otlp · [Compare](https://seerepo.com/compare/openinterpreter/openinterpreter/vs/rerun-io/rerun)
- [warpdotdev/warp](https://seerepo.com/r/warpdotdev/warp/built): axum, Tokio, tower, objc2-app-kit, objc2-foundation, winit, wgpu, comfy-table, rmcp, image, infer, zip, schemars, tracing, tracing-subscriber, OpenTelemetry, log, tracing-opentelemetry, opentelemetry-http, opentelemetry-otlp · [Compare](https://seerepo.com/compare/rerun-io/rerun/vs/warpdotdev/warp)
- [aaif-goose/goose](https://seerepo.com/r/aaif-goose/goose/built): axum, Tokio, React, console, comfy-table, indicatif, agent-client-protocol-schema, agent-client-protocol, rmcp, image, pulldown-cmark, symphonia, zip, schemars, tracing, tracing-subscriber, OpenTelemetry, tracing-opentelemetry, opentelemetry-appender-tracing, opentelemetry-otlp · [Compare](https://seerepo.com/compare/aaif-goose/goose/vs/rerun-io/rerun)
- [zed-industries/zed](https://seerepo.com/r/zed-industries/zed/built): axum, Tokio, tower, tiny_http, objc2-app-kit, objc2-foundation, accesskit, console, wgpu, wayland-client, jsonwebtoken, agent-client-protocol, image, pulldown-cmark, schemars, tracing, tracing-subscriber, log, tracing-tracy · [Compare](https://seerepo.com/compare/rerun-io/rerun/vs/zed-industries/zed)
- [ruvnet/RuView](https://seerepo.com/r/ruvnet/RuView/built): axum, Tokio, tower, React, console, indicatif, jsonwebtoken, hmac, pillow, tracing, tracing-subscriber, OpenTelemetry, log, prometheus-client, psutil, opentelemetry-appender-tracing, opentelemetry-otlp · [Compare](https://seerepo.com/compare/rerun-io/rerun/vs/ruvnet/RuView)

## Frequently asked questions

### What language is rerun written in?

rerun is written in Rust, with 940,997 written lines.

### What framework does rerun use?

rerun is built with axum, axum-core, egui, Tokio, eframe, tower, tiny_http, objc2-app-kit, objc2-foundation, and React.

### What does rerun sign people in with?

rerun signs people in with jsonwebtoken and hmac.

### Does rerun use AI?

Yes. rerun uses AI through agent-client-protocol-schema, agent-client-protocol, rig-core, and rmcp.

### What services does rerun use?

rerun uses concurrent-queue, object_store, arrow, pyarrow, datafusion, and lance.

### Does rerun have tests?

Yes. rerun has 694 test files and is tested with insta, similar-asserts, and @playwright/test.

### Which repos have a stack like rerun's?

The ones that share most of its stack: openai/codex, openinterpreter/openinterpreter, and warpdotdev/warp.

## What is your repo built with?

Any public repo, with no account: https://seerepo.com/r/owner/repo/built, with the owner and name it has on GitHub.
