Live preview

WidgetsUpdated Mar 6, 2026
Firesky

Media Library

A sermon and media library with series grouping and video playback. Organize your church's video content into series and let visitors browse and watch directly on your website.

Supported Providers

  • Firesky — Data managed in Dashboard → Widgets → Media Library. Available to all churches.

Embed

<fs-media-library></fs-media-library>

Optional Attributes

AttributeDescriptionDefault
media-labelPlural label for media itemsSermons
media-label-singularSingular label (derived from media-label if not set)Derived
layoutDisplay layout: series (default) or videosseries

Examples:

<!-- Default: series grid → series modal → player -->
<fs-media-library></fs-media-library>

<!-- Custom label for a video-focused church -->
<fs-media-library media-label="Messages"></fs-media-library>

<!-- Full custom labels -->
<fs-media-library media-label="Videos" media-label-singular="Video"></fs-media-library>

<!-- Flat video grid: skip the series popup, click any video to play directly -->
<fs-media-library layout="videos" media-label="Videos"></fs-media-library>

Layout modes

layout="series" (default) — The classic experience:

  1. Browse a grid of series cards
  2. Click a series to open a series detail popup
  3. Click a video in the popup to open the player

layout="videos" — A flat video list, ideal for YouTube-synced channels:

  1. Browse a flat grid of all videos (newest first), skipping the series layer
  2. Click any video card to open the player directly

Both layouts share the same URL-based deep linking (?item=<id>, ?latest=1).

Features

  • Series grid — Displays all series with thumbnail, title, and video count
  • Flat video grid — Optional layout="videos" skips the series popup
  • Series detail — Click a series to see all videos in it (series layout only)
  • Video playback — Embedded YouTube player or HTML5 video with title and description
  • Deep linking — Series and video state is reflected in the URL for shareable links
  • Responsive — Works on desktop and mobile

Managing Content

Go to DashboardWidgetsMedia Library to:

  • Create and manage series
  • Add videos to series (YouTube or uploaded video files)
  • Set thumbnails, titles, and descriptions
  • Reorder content
  • Connect a YouTube channel for automatic sync

YouTube Channel Auto-Sync

Connect a public YouTube channel to automatically keep your Media Library up to date:

  1. In the Dashboard → Widgets → Media Library, scroll to YouTube Channel Sync
  2. Paste your channel URL (e.g. https://www.youtube.com/@YourChurch) and click Resolve
  3. Confirm the channel details — set the earliest import date and any import options (see below)
  4. Click Connect channel — all matching public uploads are imported immediately
  5. New videos appear within minutes of being published (via WebSub push notifications)
  6. The cron reconciler runs every 30 minutes as a safety net for any missed pushes

Recommended embed for YouTube-synced libraries:

<fs-media-library layout="videos" media-label="Videos"></fs-media-library>

Import options

Import settings can be configured at connect time and edited at any time via Import settings on the connected channel card. Changing settings and clicking Save & re-sync immediately re-applies filters: newly-matching videos are imported and previously-imported videos that no longer match are hidden.

OptionDefaultDescription
Earliest import dateRequiredOnly videos published on or after this date are imported. Useful for channels with years of older content.
Include ShortsOffImport videos ≤ 60 seconds. YouTube has no direct Shorts flag — this is a duration heuristic.
Include past livestreamsOffImport completed broadcasts. Upcoming/scheduled premieres are always excluded.
Minimum duration (minutes)NoneExclude short clips. E.g. set to 10 to only import videos 10+ minutes long.
Title must containNoneComma-separated keywords. At least one must appear in the video title (case-insensitive).
Title must not containNoneComma-separated keywords. Videos matching any keyword are excluded (case-insensitive).

Requirements:

  • YOUTUBE_API_KEY must be set in your Vercel environment (YouTube Data API v3 key)
  • Videos must be public — private/unlisted videos are not synced

Requirements

  • Add allowed origins in DashboardWidgetsAllowed origins
  • Embed the Firesky script before using the widget

Use Case

Add to your church website's sermons or media page to give visitors a clean, browsable library of your video content organized by series — or connect your YouTube channel for fully automatic, zero-maintenance video sync.