StealThis .dev
Pages Medium

Podcast — Show Hub

A dark, audio-first hub for browsing a network of podcasts. Shows land in a responsive grid of glowing cover cards, each carrying host, category, episode count and a pulsing play button. Live search filters by title or host as you type, category chips narrow the roster, and a sort control reorders by newest, most episodes or alphabetical. Empty states, result counts and toast feedback keep the whole browsing loop feeling responsive and alive.

Open in Lab
html css vanilla-js
Targets: JS HTML

Code

The Show Hub is a landing surface for a fictional podcast network, built around a responsive grid of cover cards. Each card pairs a gradient artwork block with the show title, host name, a category badge and an episode count, plus a glowing violet play button that pulses on hover. The header holds a live search field and a row of category chips, so listeners can jump straight to the shows they want without a page reload.

Interactions are all vanilla JS. Typing in the search box filters shows by title or host in real time; clicking a category chip toggles a filter and updates the active state; and a sort dropdown reorders the grid by newest, episode count or name. A result counter reflects the current view, and when nothing matches, a friendly empty state appears with a one-tap reset. Play and follow actions raise a small toast so the UI always confirms what happened.

The layout is dark-first and audio-forward: vibrant violet-to-cyan waveform accents, deep surface cards and accessible focus rings. It collapses gracefully to a single column below 520px, keeps controls keyboard-usable, and maintains WCAG AA contrast throughout so the hub reads clearly on any screen.