Video Lesson Hero
Video lesson hero section pairing course info (title, instructor, duration) with a video thumbnail and a decorative centered play button overlay, plus a short previous/next lesson navigation row below.
Docs
Installation
A real shadcn registry command, not a copy-paste stand-in: it fetches this block plus its badge, media-slot dependencies and any missing npm packages, and installs them straight into your project.
npx shadcn add https://staaarter.com/r/video-lesson-hero.jsonPrefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/education/education15.tsx instead.
Usage
The file also exports education15Demo, the exact props behind the preview above. Spread it to get a working section in one line, then replace it with your own data.
import { Education15, education15Demo } from "@/components/blocks/education/education15"; export default function Page() { return <Education15 {...education15Demo} />; }
Props
| Prop | Type | Default | Description |
|---|---|---|---|
| badge | { label: string; variant?: BadgeVariant } | none | Pill above the heading; only rendered when badge is truthy. |
| heading | ReactNode | none | Lesson title. |
| instructor | string | none | Instructor name shown under the heading. |
| duration | string | none | Lesson duration, e.g. "18 min". |
| description | string | undefined | Supporting copy under the heading. |
| thumbnail | { src: string; alt: string } | none | Video thumbnail image behind the decorative play button. |
| navItems | LessonNavItem[] | [] | Up to a previous/next pair rendered below the hero; first entry aligns left, second aligns right. |
| className | string | none | Extra classes for the outer section element. |
Types
type LessonNavItem = { label: string; title: string; href?: string; };
Behavior notes
- The play button centered over the thumbnail is entirely decorative: there's no real video, no play state, and (since this is a Server Component) no onClick handler attached to it at all.
- navItems renders each entry as a next/link anchor when href is set, or as a plain non-interactive card when it isn't; the component itself performs no lesson navigation logic.
- The first navItems entry is styled to align left (assumed 'previous'), the second to align right (assumed 'next'); passing more than two entries will just left-align every one after the first.
- duration is a plain pre-formatted string, not computed from real video metadata.
More Education Blocks
View all →academy-course-cards
Academy Course Cards
Academy section with an eyebrow, a two-column heading, and three course cards that float a lesson checklist above a category label, title, and lesson count.
institutional-quick-facts
Institutional Quick Facts
Quick facts grid displaying key institutional statistics with a large value, label, and short description per tile.
global-partnerships-grid
Global Partnerships Grid
Global partnerships section showcasing partner institutions with location details and yearly exchange statistics.
mission-and-vision-statement
Mission and Vision Statement
Side-by-side mission and vision text blocks with an inspirational leadership quote below.
social-media-links-grid
Social Media Links Grid
Social media connection section with platform cards showing handle and follower count.
education-social-proof
Education Social Proof
Social proof section pairing key stats (rating, enrollment, completion rate) with a featured student testimonial.