Specreel is a tool for making product demos that update themselves. You can paste your app's URL, or point Specreel at the Playwright traces your tests already produce, and it turns those recorded browser flows into narrated, shareable demos. The goal is simple: a demo should always show the app as it is today, not as it was on the day someone recorded it. Specreel is built for people who show software to other people — marketing and sales engineers who need current demo material, and developers who already maintain end-to-end tests. It comes as an open-source CLI that runs on your machine and in your CI, plus a hosted Cloud version that needs no setup, so teams can choose the workflow that fits them.
Product demos rot. A Loom recording, a click-through tour, a screenshot in the docs — each one shows your app on the day it was recorded. The UI moves every sprint, and you usually find out the demo is wrong when a prospect does. The insight behind Specreel is that a demo and an end-to-end test are the same artifact: a recorded browser flow. Most teams keep them as two separate things, and the demo half quietly drifts away from reality. Specreel makes them one thing, so a demo can't drift without a test turning red. That ties demo freshness to a signal the engineering team already watches every day: the build.
The core workflow starts with Playwright traces. Turn tracing on by setting trace: 'on' in your Playwright config, and every test run writes a trace.zip. Running specreel test-results/ then builds a gallery of narrated demos from those traces. Captions are written from the recorded clicks and assertions, with no AI involved, so the narration describes what the test actually did rather than an interpretation of it. Because the source is your existing test output, adding demos does not require a separate recording session or a dedicated demo environment — the material is a byproduct of tests you are already running.
If you don't have tests yet, Specreel still gives you a starting point. The specreel recommend command crawls your running app, ranks the flows worth showing, and scaffolds a runnable Playwright script. That means a team with no end-to-end suite can begin with a URL and end up with both a demo and the test that keeps it honest. The recommendation step is about deciding what is worth showing — Specreel ranks the candidate flows for you rather than leaving you to guess which paths make a good tour.
Freshness is enforced by a publishing loop. A GitHub Action republishes the gallery to the same URL on every passing build, so the demo is never older than your last green build. Flows whose steps changed but still pass get an amber "updated" badge, which tells viewers that something about that flow has moved since they last looked. A flow that breaks turns the build red instead of publishing a wrong demo — the failure surfaces in the same place your team already looks for failures. Together these two behaviors mean the gallery is either current or visibly broken, never quietly out of date.
Sharing is deliberately lightweight. Specreel produces one self-contained gallery.html that you can email, or you can publish it to a URL and embed it with an