Showcase · built on omxcode

omxplorer

A data explorer that never makes you wait. 100 million rows in a native window, on the GPU or the CPU, whichever is faster.

the real app, recorded on Linux · 100,000,000 rows · RTX 3090 · 22 s, not sped up

We eat our own dog food. omxplorer pushes the framework: if the app can't do something smoothly, the framework isn't done.

real data · DROID, CC-BY-4.0

Why did the robot drop it?

The whole fleet is a sheet: 63,344 real episodes from 13 labs, their video and 16.8M telemetry rows, linked by key and time. A failure opens with its video and telemetry on one cursor.

  • 63,344episodes from 13 labs, one row each
  • 16.8Mtelemetry rows, joined by a link you confirm
  • ~40 msa question in words over every telemetry row

the real app, recorded on Linux · DROID (CC-BY-4.0) · docs/goals/47-report.md

Where omxplorer is different

Not a replay. An investigation.

Robotics viewers replay a recording. omxplorer starts from a question across the whole fleet, then shows you the moment.

4 · Links you confirm by hand

Key, time, place: drag, confirm, done.

No schema written in code. Drag a column onto a card and say yes. Nothing joins until you link it, and a question uses only the links you made, so every answer can show where it came from.

1

The fleet is a spreadsheet you touch.

Pivots, charts from a sentence, formulas and edits, over every run.

2

Question → moment, in one motion.

Ask in words over 16.8M rows (~40 ms), tap an answer row, and its video and telemetry open on the same cursor.

3

Documents in the same join.

A manual or paper linked by key, with the passage marked.

5

No server for the analytics.

The query runs in the app's process, on your GPU.

16.8M telemetry rows · 37–42 ms in the check's runs · docs/goals/47-report.md

Speed

The window never waits.

Big queries run beside the window, not in it. The longest pause while 100 million rows are crunched is two frames.

1.8sopen 100M rows from Parquet
0.77smedian by region over 100M rows, on the CPU
33msthe longest the window paused meanwhile
0.6msa chart over 1M rows, grouped and sorted
0.3msthe status bar's sum and average, 1M rows
0.8msa frame of 1M-row grid scrolling, p95

one Linux machine · NVIDIA RTX 3090 · measured by scripts/check, goals 26, 29 and 30

Ask the chart

A chart is its sentence.

Sum of revenue by month, every row, as a line

Every coloured word is a setting: tap it to change it, or type what you want; at a million rows it recomputes in under a millisecond.

"median""by region, top 5""only paid, as bars"
The island

One capsule tells you everything.

at restthe file, its rows, the GPU
runningwhat, how far, how fast
donehow long it took, and where
undowhat changed, one tap back
errorstays until you've seen it

It rests small. When something happens it grows to say what, in 320 ms on a calm curve, then settles back. Tapping it opens your recent work and the GPU's timings.

The look

Liquid, on every screen.

Calm surfaces, motion that settles and never bounces, and three more skins a tap away: Ledger, Graphite and Blueprint. The same app, natively drawn.

omxplorer on Linux, drawn by GTK
Linux · GTK 4
The same omxplorer on the web
the web · the same app.mojo

Up close magnified

Insert chart
Pressshrinks to 97%, eases back · 150 ms
BarsLine
Switchthe selection slides and settles · 150 ms
Format ▾
BoldCurrencyPercent
Arrivemenus rise into place, no bounce · 200 ms
Selectthe ring glides between cells · damped, ~140 ms
Inside

Three pieces, one package.

framework

omxcode

Native controls on each platform, the GPU canvas, the agent tools.

engine

omxframe

A dataframe engine in Mojo: SQL, joins and group-bys on the GPU or the CPU, queries as background jobs.

design

omxqua

The design language: tonal surfaces, one soft shadow, calm motion.

the research behind it

Run it

Try it on your data.

Download for Linux  Download for Mac

Linux: x86_64, GTK 4, NVIDIA for the GPU path; unpack, then ./omxplorer path/to/your.csv · Mac: Apple Silicon, macOS 26, not notarised: xattr -dr com.apple.quarantine OmxplorerMojo.app

git clone https://github.com/abhisheksreesaila/omxcode
cd omxcode && pixi install
scripts/omxplorer.sh path/to/your.csv
or from the source · Linux · NVIDIA GPU (the CPU works too, slower)
Honest edges. It's an alpha.
New pivots and charts can land on top of each other. Next: they tile into place.
On the Mac (run on GitHub's macOS runners), long jobs get their own threads too: the longest frame gap during a 1.5 s job went from 1.5 s to 77 ms. Real Mac hardware is next.