← Back to case studies
Case study — sales analytics Delivered

Three portals, one answer that mattered.

A window-treatment retailer (3 supplier portals, ~1,000 orders/yr) whose order data was trapped portal by portal — turned into an automated pipeline that answers the question inventory actually depends on.

  • 99.3% of 1,011 orders fit a single size profile.

  • 3 → 1 supplier portals consolidated into one place.

  • 8 interactive dashboards running on live data.

The problem

Order data was locked inside 3 separate supplier portals, each with its own format and login. Analysis was done by hand, portal by portal — slow, error-prone, and impossible to view across vendors. The decision that mattered most, which product sizes to actually stock, had no data behind it.

What I built

Playwright scrapers pull each portal automatically (one async, concurrent, for a React-rendered site). Fuzzy matching plus regex normalization reconcile inconsistent product names across vendors, and everything lands in a single Postgres store.

On top sit 8 interactive Marimo dashboards. The pipeline surfaced the headline finding directly: 99.3% of 1,011 orders fit a single size profile — turning an inventory guess into a measured decision.

Stack

Python · Playwright · Supabase · Marimo · Altair · Pandas · Docker

Open live dashboard

Live demo — synthetic data, identical dashboard logic to the delivered system. Runs entirely in your browser.

Book a free 30-min call