Skip to main content
home35 Designs
All workPlatform

Glenhouse Live

Glenhouse Live is a creator-powered live distribution network: brand partners buy guaranteed live hours across a curated, contracted pool of TikTok creators. Behind the public site is the platform that runs it, with four roles and admin approval, campaigns and deals, Stripe Connect payouts, and a separate worker that watches the streams and fills in each deal's analytics.

Home page of Glenhouse Live

At a glance

Type
Platform
Industry
Live streaming
Built with
Next.js 14, TypeScript, Prisma on Postgres, Clerk, Stripe Connect, Playwright
Timeline
February to June 2026, 28 commits
Codebase
About 35,500 lines of TypeScript, 33 pages, 55 API routes and 15 data models

Four roles, approval first

Creators and brand partners each get their own workspace, and super admins and admins share the admin console. New creator and brand accounts start unapproved and wait on a holding page until an admin lets them in. The middleware checks each request's role, then every page layout and every API handler checks role and approval again, and with authentication unconfigured in production the app refuses every private route rather than opening up.

A visibility table decides what each role can see: brand partners see their own spend, creators see only their own payout, and the platform's own figures are for admins alone.

Payments run on Stripe Connect Express. Every amount is kept in whole cents and the breakdown always sums exactly to the deal total; payment amounts are read from the database, never from the request; and the payment webhook is signature-verified and idempotent. The payout flow is code-complete and running in Stripe's test mode.

  • Glenhouse Live home page with the illustrative reporting dashboard
  • Glenhouse Live home page on a phone

The livestream worker

TikTok's API doesn't report live-stream metrics, so a standalone worker fills the gap. A headless browser driven by Playwright spots when a monitored creator goes live and captures screenshots, and a WebSocket connection records chat, gifts, likes and shares while the stream runs.

The worker runs outside Vercel because it holds long-lived connections. It posts to the app's ingest API with a shared key checked in constant time, stores screenshots in Vercel Blob behind an admin-only proxy, and fills in the linked deal's analytics when a stream ends.

The public site explains the model to brands; the dashboards behind the sign-in aren't shown here.

  • How-it-works steps and the not-an-agency section of the home page

Highlights

  • Role checks in middleware, then role and approval checks in page layouts and every API handler, failing closed when auth isn't configured.
  • Whole-cent payment breakdowns that always sum to the deal total, with idempotent, signature-verified Stripe webhooks.
  • TikTok tokens encrypted with AES-256-GCM, and decryption that fails closed.
  • A Playwright and WebSocket worker that turns live streams into deal analytics.

Let's talk.

Tell me what you're building. I read every message myself and usually reply within one business day.