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.
Import your Twitch follows once. A background worker polls for new VODs every 15 minutes and fills your feed.
Pick up exactly where you left off. VODs auto-mark as watched at 90%, with a continue-watching row on the dashboard.
The original chat plays back alongside the VOD, with emotes and real-world timestamps.
Twitch removed a VOD? Vault probes Twitch's CDN and can often still play recently deleted streams.
Save any VOD to your computer as a single playable file. No extra tools needed.
Everyone signs in with their own Twitch account and gets their own subscriptions and watch progress. The first user becomes admin and controls registration.
Watch two VODs side by side, synced to the same real-world moment — great for multi-POV streams.
A player that fills your screen without fullscreen, plus dark and light themes saved per account.
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
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.
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.
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.