selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

Halcyon Video logo

Self-host Halcyon Video

v0.30.0

Walkable 1990s video store for your media library

BetaOpen SourceGPL-3.0
Updated16 hours ago
LanguageTypescript
Setup difficultyModerate
MobileResponsive
Stars
947
Port
1420 (HTTP web server)
Docker
ghcr.io/halcyon-video/halcyon-video
Install with Docker

What is Halcyon Video?

Halcyon Video is a self-hosted web application that renders your personal media library (from Jellyfin, Plex, or Emby) as a fully navigable 3D video rental store reminiscent of the 1990s. You walk down aisles, pick up VHS or DVD cases, flip them to read synopses and technical details, and check out at a counter staffed by an animated clerk. The store can also stock titles from streaming services (Netflix, Disney+, Prime Video, etc.) and a games department via RomM. It runs in any modern browser with WebGL, supports gamepad/TV remote/phone controls, offers a first-person walk mode with WebXR headset support, and includes a low-power 2.5D HTML/CSS mode. Deployment options include Docker, Docker Compose, and local launchers for Windows, macOS, and Linux. The project is free and open-source under GPL-3.0 with no paid tiers.

Should you self-host Halcyon Video?

Halcyon Video scores 54/100 on selfhost.directory (how scoring works) and ranks #26 of 54 in Media Streaming. It has 947 GitHub stars.

It shipped 10 stable releases in the past year. The latest, v0.30.0, came out on 28 October 2026. New versions land roughly every 5 days.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is GPL-3.0-licensed and written mostly in Typescript.

Its closest alternative on selfhost.directory is Invidious (81/100, 25 799 stars). It scores higher overall, so compare the two before you pick. See Halcyon Video vs Invidious side by side.

Features

  • 2.5D low-power mode
  • 3D video store browsing
  • Attract mode tour
  • Customizable store appearance
  • Emblem Studio
  • Emby Integration
  • First-person walk mode
  • Jellyfin Integration
  • Jellyseerr/Overseerr requests
  • Plex Integration
  • Remote Play via WebRTC
  • RomM games department
  • Steam IntegrationRequires Halcyon Steam Companion on gaming computer
  • Streaming service discoveryLink-out only; requires own subscription
  • VHS/DVD case inspection

Halcyon Video README

How to install Halcyon Video

Install Halcyon Video with Docker

Environment variables
HALCYON_JELLYFIN_URL, HALCYON_PROXY_ALLOWED_URLS, HALCYON_TRUSTED_NETWORK_CONTROLS

docker run -d --name halcyon --network host --restart unless-stopped
ghcr.io/halcyon-video/halcyon-video

Host networking for WebRTC; publish port 1420 for browser-only use

How to configure Halcyon Video

  • HALCYON_JELLYFIN_URLPrefill Jellyfin server address for visitors

    Prefill Jellyfin server address for visitors

    values: Any valid Jellyfin server URL

  • HALCYON_PROXY_ALLOWED_URLSComma-separated absolute HTTP/HTTPS URLs allowed for the integration proxy

    Comma-separated absolute HTTP/HTTPS URLs allowed for the integration proxy

    values: Comma-separated URLs

  • HALCYON_TRUSTED_NETWORK_CONTROLSSet to '1' to restore network access for playback controls and Remote Play endpoints (only for trusted private installations)

    Set to '1' to restore network access for playback controls and Remote Play endpoints (only for trusted private installations)

    values: 1 or unset

  • VITE_JELLYFIN_URLAlias for HALCYON_JELLYFIN_URL (lower precedence)

    Alias for HALCYON_JELLYFIN_URL (lower precedence)

    values: Any valid Jellyfin server URL

Halcyon Video releases & version history

FAQ

What is not shipped yet?

A published desktop bundle and the Apple TV client remain on the roadmap. The source tree contains the Tauri shell and tvOS groundwork, but neither is presented as a finished download.

Does Emby work?

Yes. Choose Emby at the opening-day terminal or Connection Center, enter your server address, and select your member card or sign in with your Emby server username and password.

Does Plex work?

Yes. Choose Plex at the terminal, enter the short code at plex.tv/link, and select a server. Shelves, playback, collections, resume points, and watch history work through the Plex provider.

Can I make it look like the store I remember?

Yes. Era, shelving, media format, facade, lighting, signage, fixtures, brand, and case art are independent layers. The public project ships only its original fictional identity; private reference-derived art stays in local user assets.

Can I use only streaming subscriptions?

Yes. Select the services at opening day and the store stocks their aisles from the bundled snapshot. A media server is needed only for personal files and in-app playback.

Do I need a gaming PC?

No. The renderer scales to the hardware and idles on a held frame. Low-end devices can use 2.5D mode, while Remote Play lets a stronger machine render for a phone or television.

More in Home Server

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…