Beacon

Built in-house · IGS Engineering Quality

Made by TestOps.

Beacon is an internal tool the TestOps team built because checking whether a performance fix actually worked kept coming down to somebody's memory of a number they saw last week.

Why it exists

Somebody's memory of a number is not a measurement.

Running Lighthouse by hand gives you a score for one page, on one machine, at one moment. That's genuinely useful right up until you need to answer a harder question — did the change we shipped on Tuesday make things better or worse? — at which point a single number is no help at all, because there's nothing to hold it against.

So Beacon keeps them. Every audit it has ever run is stored with the conditions it ran under, which means any two runs can be lined up later: the same fifteen URLs before a fix and after it, matched page by page, sorted so the worst regression is the first thing you see. That comparison is the whole reason the tool exists; everything else — the bulk runs, the history, the Chrome extension, the exports — is in service of being able to make it.

It's also deliberately honest about its own limits. A busy machine produces slower numbers, so Beacon records how many audits were running at once and badges the result as noisy rather than presenting a contention artefact as a regression. Re-auditing the same URL within a minute measures nothing new, so it declines and says why. An instrument that hides its own error bars isn't much of an instrument.

Who built it

Contributors.

The TestOps team behind the tool.

Aishwarya A SDET-I
Rishi Manjunath SDET-I
Sudarshan Sharma SDET-I
Kaushik MR Lead Test Automation Architect
Mahesh C Technology Excellence Leader

How it's put together

The stack.

Nothing exotic — the interesting part is the audit pipeline, not the framework choices.

Measurement
Google Lighthouse
chrome-launcher
Headless Chrome
Server
Next.js 14 · App Router
Prisma ORM
PostgreSQL
Dashboard
React 18
Vite
Inline SVG charts
Extension
Chrome Manifest V3
Service worker
Per-member API keys