Partial Component

Video

The Video partial provides a flexible video player that supports YouTube, Vimeo, and Cloudinary video sources. It can display videos in modal overlays or in situ, with customizable thumbnails and play controls.

Manifest

{
  "name": "video",
  "type": "_partials",
  "styles": ["video.css"],
  "scripts": ["video.js"],
  "requires": ["overlay"]
}

Configuration

video:
  id: 'dQw4w9WgXcQ'
  src: 'youtube'
  tn: '/assets/images/video-thumb.jpg'
  alt: 'Video description'
  inSitu: false
  start: 0
  end: null

Configuration Options

PropertyTypeRequiredDescription
idstringYesVideo ID from the platform
srcstringNoPlatform: 'youtube', 'vimeo' (default: 'youtube')
tnstringYesThumbnail image path
altstringNoAlt text for thumbnail
inSitubooleanNoDisplay in situ, not modal
cloudnamestringNoCloudinary cloud name (for Cloudinary videos)
startnumberNoStart time in seconds
endnumberNoEnd time in seconds

Example

Here is a cheesy example of a video playing in a modal overlay.

Usage in Templates

{% from "components/_partials/video/video.njk" import video %}

{# Modal video (default) #}
{{ video({
  id: 'dQw4w9WgXcQ'
  src: 'youtube'
  tn: '/assets/images/dancing.jpg'
  alt: 'Demo video thumbnail'
  inSitu: false
}) }}

Notes

  • Supports YouTube, Vimeo, and Cloudinary videos
  • Modal popup or in situ embedding
  • Start and end time parameters
  • Use your own thumbnails