Skip to content

Comments

add vod-timestamp addon#349

Open
mellen9999 wants to merge 2 commits intoFrankerFaceZ:masterfrom
mellen9999:feat/vod-timestamp
Open

add vod-timestamp addon#349
mellen9999 wants to merge 2 commits intoFrankerFaceZ:masterfrom
mellen9999:feat/vod-timestamp

Conversation

@mellen9999
Copy link

VOD Timestamp Finder

Convert a clock time (UTC or local) to the corresponding VOD timestamp.

The problem: You see a chat message at 04:48 UTC but the VOD timeline shows stream-relative time. Manually calculating the offset from stream start is tedious, especially across timezones.

The solution: On any VOD page, click the clock button in the metadata bar, enter the time, and get an instant seekable link.

Features

  • Enter time as HH:MM:SS or HH:MM
  • Toggle between UTC and local timezone in settings
  • Seeks the player directly on click
  • Copy URL button for sharing timestamped VOD links
  • Shows stream start time for sanity checking
  • Caches video start time per VOD (one GQL query per video)
  • Cleans up on route change and disable

Files

  • src/vod-timestamp/index.js — 210 lines, zero external dependencies
  • src/vod-timestamp/manifest.json
  • src/vod-timestamp/utilities/graphql/video_info.gql

Testing

  • Builds cleanly with NODE_ENV=production webpack build
  • No new warnings introduced

enter a UTC or local time (from chat logs, etc.) to instantly jump to
that moment in a VOD. shows a clickable timestamp + copy URL button.
@mellen9999 mellen9999 closed this Feb 21, 2026
@mellen9999 mellen9999 deleted the feat/vod-timestamp branch February 21, 2026 00:42
@MrPandir
Copy link
Contributor

@mellen9999 A useful extension. Why was it closed?

@mellen9999 mellen9999 restored the feat/vod-timestamp branch February 23, 2026 02:12
@mellen9999 mellen9999 reopened this Feb 23, 2026
- convert spaces to tabs (eslint requirement)
- fix DST bug: use explicit Date construction instead of setHours
  mutation on cloned Date which breaks across DST transitions
- add post-await navigation guard in fetchVideoStart to prevent
  stale video ID on rapid route changes
- add aria-live/role=status on result box for screen readers
- add aria-label on input
- wrap all user-visible strings in i18n.t() for localization
- use destructured createElement import (matches ffz convention)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants