Live Shoppers
A realtime layer for Shopify storefronts: real viewer counts, live cursors and shared carts, so a busy store finally looks busy.
- Role
- Solo founder: product, design and engineering
- When
- Oct 2026, live on the App Store
- Platform
- Shopify app with a realtime server
The problem
Online, every shopper browses alone. Even a store with hundreds of visitors looks empty, and the social proof a physical shop gets for free is missing.
What I built
Live Shoppers shows real activity on the storefront: viewer counts on product cards, add-to-cart and sale moments, live cursors during campaigns, and shop-together carts with a reward. Campaign results are measured against a control group, so merchants see whether it actually moved conversion.
Under the hood
- A standalone WebSocket server keeps rooms per shop and page. Cursor moves are batched to 20 updates a second, each room broadcasts at most 30 cursors, and viewer counts are only pushed when they change.
- No secrets in the browser: an App Proxy issues short-lived HMAC tokens that the realtime server verifies, and expired tokens trigger a clean reconnect.
- Cursors are anchored to page elements rather than raw coordinates, so they line up across screen sizes, and motion is eased in requestAnimationFrame.
- Privacy and abuse limits: anonymous names, respect for the Customer Privacy API consent, payload caps and rate limits on the server.
- Shopify features used together: a Theme App Extension, App Proxy, app metafields, a Discount Function and the Storefront API for shared carts.
Where it stands
Launched in October 2026 with a free plan for smaller stores.
Built with
React 19React Router 7WebSocketsTheme App ExtensionsApp ProxyShopify FunctionsStorefront APIesbuildPostgreSQL