Vault

Your Twitch VODs, on your own server.

Vault is a self-hosted dashboard for Twitch VODs. Track the streamers you follow, watch with resume and chat replay, recover deleted VODs, and download them to your machine — multi-user, on your own hardware.

Features

Automatic VOD tracking

Import your Twitch follows once. A background worker polls for new VODs every 15 minutes and fills your feed.

Resume & watched state

Pick up exactly where you left off. VODs auto-mark as watched at 90%, with a continue-watching row on the dashboard.

Chat replay, synced

The original chat plays back alongside the VOD, with emotes and real-world timestamps.

Deleted-VOD recovery

Twitch removed a VOD? Vault probes Twitch's CDN and can often still play recently deleted streams.

One-click download

Save any VOD to your computer as a single playable file. No extra tools needed.

Multi-user

Everyone signs in with their own Twitch account and gets their own subscriptions and watch progress. The first user becomes admin and controls registration.

Split view

Watch two VODs side by side, synced to the same real-world moment — great for multi-POV streams.

Theater mode & theming

A player that fills your screen without fullscreen, plus dark and light themes saved per account.

Quick start

  1. Clone and configure

    You need Docker and a free Twitch application (two values in an env file).

    git clone https://github.com/Bumpfi/vault.git
    cd vault
    cp .env.production.example .env
  2. Create a Twitch app

    At dev.twitch.tv/console/apps, create an app (category: Website Integration) with the OAuth redirect URL https://<your-host>/api/auth/callback/twitch. Put its Client ID and Secret into .env.

  3. Start it

    docker compose -f docker-compose.prod.yml --env-file .env up -d --build

    Sign in with Twitch — the first account becomes admin. Import your follows in Settings, and the worker takes it from there. The login page repeats these steps with your exact callback URL.

Stack

TanStack Start (React SSR) · PostgreSQL + Drizzle · Better Auth (Twitch OAuth) · BullMQ + Redis worker · Docker Compose with Caddy for LAN HTTPS. Full setup and deployment docs live in the repository.