Skip to content

Saturday, October 17

New project: VOD ๐Ÿ“ผ

VOD is a video player component that streams camera footage from R2, seamlessly covering timelines of arbitrary length. This is a plain React/Vite SPA with a Cloudflare Worker backend in front of a Turso/libSQL database. Thereโ€™s an authenticated admin route for editing metadata, but since itโ€™s only me, I just added some Cloudflare Access rules and called it a day.

Thereโ€™s also a local command that ingests raw footage into Turso and R2. The whole package is an upgrade to my recent dash project and its video.sh command.

View full postโ€ฆ

Git Commits

dash commits 4 ohnsh/dash
  • 11:36 pm โ€” John Sherrell <dev@ohn.sh>

    CE

  • 4:48 pm โ€” John Sherrell <dev@ohn.sh>

    Fix props type for SVG component (`React.ComponentPropsWithoutRef<'svg'>`)

  • 4:45 pm โ€” John Sherrell <dev@ohn.sh>

    next: VOD logo now a TSX component that responds to `prefers-color-scheme`.

  • 4:07 pm โ€” John Sherrell <dev@ohn.sh>

    next: Remove <VodView> from root `/` route, replacing with an <iframe> embedding vod.ohn.sh. The old dash-native <VodView> still renders on day-specific routes.

days commits 1 ohnsh/days
  • 11:34 pm โ€” John Sherrell <dev@ohn.sh>

    Link to new VOD project.

YouTube