Skip to content
Jon Connell
Previous work

Media library

Horde

A self-hosted video library: download from the web, browse by channel, watch in a player, and search with optional AI.

View on GitHub

The library: continue watching, channels, and search across the archive.

Horde video player with related videos and an AI-written summary
The player, with related videos and an AI summary under the title.
Horde channel catalog for Linus Tech Tips with download buttons on videos that are not saved yet
A channel catalog, with a download button on videos that are still online.
Role
Design and build
Status
Self-hosted
Built with
ReactTypeScriptPythonDockerSQLite

Context

Horde is a private archive for videos that do not belong in a movie-and-TV library. Paste a link and it downloads. Drop a file in a folder and it shows up for review. Channels, playlists, and continue-watching sit on top of the files, and an optional AI pass can summarize a video, tag it, and help search.

What it covers

  • A download queue for YouTube and other sites, with quality choices and live progress
  • A library organized by channel, plus a catalog of uploads that are not on disk yet
  • A player with chapters, subtitles, playlists, and continue watching
  • Import from a drag-and-drop upload or from files dropped into the media folder
  • Optional AI summaries, tags, and search, through a local model or a cloud key

Notes

Horde runs on a private server in Docker. These screenshots are the app, and the source is on GitHub.

It is an example of software built around one specific way of working: archive, organize, and find. A business tool can be shaped the same way around the job it has to do.