StealThis .dev
Pagina's Medium

Music — Streaming / Modern Pop Landing

A sleek, glossy landing page for the fictional Pulsewave streaming service, built in HTML, CSS, and vanilla JS. A dynamic hero pairs animated gradient glow blobs with a floating phone mockup whose now-playing screen cycles tracks behind a live equalizer and progress scrubber. Below sit glassy feature cards for offline, lossless, and personalized listening, a count-up catalog stat band, a Free, Premium, and Family pricing grid with a monthly to annual toggle, plus scroll-reveal motion and toasts throughout.

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

Code

Streaming / Modern Pop Landing

A premium marketing landing for Pulsewave, a fictional modern-pop streaming service. The hero leads with a bold Space Grotesk headline and a gradient-clipped accent word, a “Start listening free” call to action, and App Store / Google Play buttons, all set against three slowly drifting neon glow blobs that also react to the pointer. Beside the copy, a floating phone mockup renders a glassy now-playing screen: a CSS-drawn album cover with an animated equalizer, a scrubbable progress bar with live timestamps, a morphing play/pause button, and an “Up next” queue that updates as tracks change.

The page then steps through a glassy feature trio — offline downloads, lossless and spatial audio, and a personalized feed — a catalog stat band that counts up to 90M+ tracks and 120M+ listeners as it scrolls into view, and a three-tier pricing grid (Free, Premium, Family) with a monthly/annual switch that re-prices every plan and applies a 20% annual discount. A closing CTA strip and a full multi-column footer round it out.

Everything is vanilla JS: the mockup auto-advances tracks on a timer and can be paused, skipped, or scrubbed; the equalizer animates only while playing; the billing toggle is a real role="switch"; stats count up via requestAnimationFrame; and a shared toast() helper confirms every illustrative click. Sections reveal on scroll, controls are keyboard-focusable with visible focus rings, and all motion (blobs, float, equalizer, reveals) is disabled under prefers-reduced-motion. The layout is responsive down to ~360px.

Illustrative UI only — fictional artists, albums, tracks, and data. No real audio playback.