StealThis .dev

Video — Player Custom

A cinematic custom video player with letterboxed hero, amber-accented scrub timeline showing buffered ranges, play/pause, volume with mute, playback speed, chapters, fullscreen and a monospace timecode readout. Fully keyboard-driven with space, arrows, J/K/L, M, F and number-key seeking, plus an animated overlay control bar that auto-hides during playback and a chapter rail that highlights the active segment.

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

Code

A film-forward custom player that wraps a real <video> element in a director’s-cut chrome. The hero sits inside black letterbox bars, and a translucent control bar fades in on hover or focus and auto-hides two seconds into playback. The scrub track paints buffered ranges in muted grey behind an amber progress fill, with a draggable thumb and a live timecode bubble that follows the pointer while you scrub.

Below the transport controls sit the essentials: play/pause, a volume slider that collapses to a mute toggle, a playback-speed menu (0.5x through 2x), a chapter jump menu, and fullscreen. Timecodes render in JetBrains Mono so current-time and duration stay perfectly aligned as digits change. A chapter rail under the frame lists named segments and highlights the one currently on screen.

Every action is keyboard reachable: space or K toggles play, J and L jump ten seconds, arrow keys nudge five seconds and adjust volume, M mutes, F goes fullscreen, and number keys 0-9 seek to that decile of the clip. Focus rings stay visible, controls carry aria labels and pressed state, and the whole layout reflows cleanly down to a 360px phone.