Dashboards and Hopper

From a 993-row spreadsheet to guided QA

EPAIn productionNext.jsBigQueryFirestoreGeminiClaudeCloud Run · IAP

Problem

Checking a dashboard before delivery relied on a 993-row spreadsheet.

The QA matrix came back almost empty. At the same time the agency started building dashboards with AI, and each one needed review before reaching a client.

How it works

  1. Analystnew dashboard
  2. Hopperguided QA
  3. Real dataBigQuery
  4. GitHubprioritized issues
Cloud Run behind IAP
  1. 01Hopper collects the dashboard’s context in a guided flow.
  2. 02It checks what the dashboard shows against the real data.
  3. 03It opens prioritized GitHub issues. There is also a CLI to audit without a browser.

Decisions

DECISION 01

Rules and data first.

Checks against the data are code; Gemini comes in where the analyst’s context needs interpreting.

DECISION 02

Every finding ends up in GitHub.

Problems are opened as prioritized issues in the dashboard’s repo, where its builder already works.

DECISION 03

A fixed stack for dashboards.

The agency’s Claude Code plugin marketplace sets the stack, BigQuery conventions, design system, deployment and security guardrails, so every dashboard starts from the same base.

DECISION 04

Follow what people were already doing.

With the plugins, account people started building something like dashboards but with AI-generated insights, which wasn’t in the plan. Instead of stopping it, we added tools and skills so they could do it well.

Result

993rows in the spreadsheet Hopper replacedSource: previous QA matrix
30 minfor Coppel’s daily SKU analysis, down from a full daySource: Coppel project, 2026

Hopper replaced the spreadsheet. I also co-developed the Paid Media and eCommerce dashboard and the SKU dashboard and ETL for Coppel, with CI/CD to Cloud Run.

MY ROLEAuthor of Hopper and co-developer of the dashboards.Hopper is mine end to end. On the Paid Media and Coppel dashboards I worked with other people on the team.