Cards & Expandables
Video Thumbnail Card
The tile a video library, course list or media grid is built from — poster frame, duration badge, play affordance and an optional watched-progress bar. Links out to your own player route rather than embedding one, so a grid of these stays light.
$ velocityx add video-thumbnail-card
Built for react.
Needs react already installed
as a peer dependency.
An Astro-only project needs @astrojs/react wired up first — this won't run on its own in plain Astro.
Full docs for Video Thumbnail Card →
Needs a licence key —
subscribe here, then
velocityx loginonce.
Props
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| title | string | Yes | ||
| posterSrc | string | Yes | ||
| duration | string | Yes | already-formatted, e.g. "12:04" | |
| category | string | Yes | small eyebrow, e.g. "Tutorial" | |
| meta | string | Yes | e.g. "48K views · 3 days ago" | |
| progress | number | Yes | 0–100, shows a watched-progress bar | |
| href | string | Yes | ||
| onClick | () => void | Yes | ||
| className | string | No | '' |
File this creates
The CLI writes this path into your project, relative to its root — nothing else moves.
components/velocity/video-thumbnail-card/VideoThumbnailCard.jsx Using the Video Thumbnail Card component
Install it with velocityx add video-thumbnail-card.
The CLI writes the source straight into your project — no runtime dependency, no registry
lock-in, and it themes itself from the same primary-*/accent-* scale as the rest of the library.
Related components
More from Cards & Expandables.
A stack of independent cards where opening one smoothly expands its detail and closes any other open card, while every card's summary stays legible whether open or closed. Height animates off the panel's real measured content, so there's never a layout jump.
reactThe loading shape for a grid of cards — media block, title line, sub line, sized to match real card dimensions so the grid doesn't shift when data arrives. Ships media, list and stat variants; static (not faster) under reduced motion and hidden from screen readers.
reactA directory entry — avatar, name, role, a short list of real tel/email/location contact methods, and one primary action. Built for a staff directory or "your account manager" block, not a hover-reveal bio tile.
reactCard that expands into a focused overlay on desktop and a draggable bottom sheet on mobile, with three snap points. Portal-rendered, focus-trapped, scroll-locked and reduced-motion aware.
react