Bug reporting with the context already attached. One click on the page that is misbehaving captures the screenshot, the console and the network log, then hands over a link anybody can open. No account to file one, no login to read it.
Most bug reports arrive as "it's broken" and half a screenshot. The person who filed it has moved on, and whoever has to fix it starts by asking which page, which browser, and what the console said.
Session Replay answers those questions before anybody asks them. A Chrome extension captures the screenshot, the console, the network requests and the browser it happened in, then hands over a link. Reports go on to Jira, Linear, Slack, Teams, GitHub or a signed webhook.
We write here about what comes up either side of a bug report, published on our own blog first and syndicated with the canonical link pointing home.
Our stack
Rails 8 on Ruby 3.4 with YJIT, Hotwire rather than a front-end framework, PostgreSQL, Redis and good_job for background work.
The capture side is a Chrome MV3 extension in plain JavaScript. The drop-in library sites embed has zero dependencies on purpose: it loads from a script tag on somebody else's page, so every byte and every transitive dependency would be ours to justify.
Seven languages, translated in full, held there by a spec that fails on a missing key, an unused key or an unnormalized file.