TeaserTrack

TeaserTrack

Overview

The problem, and how I solved it.

The challenge

TeaserTrack started as a movie discovery site built on TMDB data. When I had to drop the movie version, the domain and the habit it served were still worth something: people checking what is coming next.

So I gave it a second life. Developer tools launch everywhere at once: a thread, a repo README, a waitlist form, a Discord invite. By the time most developers hear about a tool, the early beta spots are gone.

The approach

I designed and built the whole product: explore with search and filters, a launch calendar, category and maker pages, and tool pages with countdowns, galleries and video that plays when it scrolls into view.

Behind the pages: GitHub and Google sign in, upvotes, submissions with direct uploads to Cloudflare R2, an owner dashboard, an admin review queue with listing quality checks and an automated ingest queue, and a newsletter with a weekly digest.

Search was part of the build, not an afterthought. Every listing gets a search-ready page with its own FAQ, plus alternatives pages, an A to Z index, structured data and a share image.

TeaserTrack detail 1
TeaserTrack detail 2
TeaserTrack detail 3
TeaserTrack detail 4
TeaserTrack detail 5

Motion

A home page that explains itself.

The old section explained the product with three static cards. I rebuilt it as a short story told by scrolling: the stage holds still while the product shows, step by step, the problem it solves.

Before

TeaserTrack before the motion pass

After, as you scroll

TeaserTrack motion step 1: Launches are scattered: sources drift around the stage.
01Launches are scattered: sources drift around the stage.
TeaserTrack motion step 2: They fly into one reviewed listing with a status.
02They fly into one reviewed listing with a status.
TeaserTrack motion step 3: Upvotes climb and the launch-day email lands.
03Upvotes climb and the launch-day email lands.
  • CSS sticky holds the stage instead of a JavaScript pin, so the page's markup is never rearranged while it loads.
  • Phones and reduced motion get the finished state, with nothing pinned and nothing hidden.
  • I also fixed a site-wide stutter where cards showed, then jumped back to replay their entrance.

In numbers

What it adds up to.

273

Automated tests passing

200

Pages prerendered at build

13

Categories at launch