dependabot[bot] 46c477e919 chore(deps): bump the npm_and_yarn group across 1 directory with 6 updates
Bumps the npm_and_yarn group with 3 updates in the / directory: [@fastify/static](https://github.com/fastify/fastify-static), [fastify](https://github.com/fastify/fastify) and [next](https://github.com/vercel/next.js).


Updates `@fastify/static` from 8.3.0 to 10.1.2
- [Release notes](https://github.com/fastify/fastify-static/releases)
- [Commits](https://github.com/fastify/fastify-static/compare/v8.3.0...v10.1.2)

Updates `fastify` from 5.8.5 to 5.12.1
- [Release notes](https://github.com/fastify/fastify/releases)
- [Commits](https://github.com/fastify/fastify/compare/v5.8.5...v5.12.1)

Updates `next` from 15.5.16 to 15.5.21
- [Release notes](https://github.com/vercel/next.js/releases)
- [Commits](https://github.com/vercel/next.js/compare/v15.5.16...v15.5.21)

Updates `fast-uri` from 3.1.2 to 3.1.7
- [Release notes](https://github.com/fastify/fast-uri/releases)
- [Commits](https://github.com/fastify/fast-uri/compare/v3.1.2...v3.1.7)

Updates `find-my-way` from 9.6.0 to 9.9.0
- [Release notes](https://github.com/delvedor/find-my-way/releases)
- [Commits](https://github.com/delvedor/find-my-way/compare/v9.6.0...v9.9.0)

Updates `nanoid` from 3.3.12 to 3.3.18
- [Release notes](https://github.com/ai/nanoid/releases)
- [Changelog](https://github.com/ai/nanoid/blob/3.3.18/CHANGELOG.md)
- [Commits](https://github.com/ai/nanoid/compare/3.3.12...3.3.18)

---
updated-dependencies:
- dependency-name: "@fastify/static"
  dependency-version: 10.1.2
  dependency-type: direct:production
  dependency-group: npm_and_yarn
- dependency-name: fastify
  dependency-version: 5.12.1
  dependency-type: direct:production
  dependency-group: npm_and_yarn
- dependency-name: next
  dependency-version: 15.5.21
  dependency-type: direct:production
  dependency-group: npm_and_yarn
- dependency-name: fast-uri
  dependency-version: 3.1.7
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: find-my-way
  dependency-version: 9.9.0
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: nanoid
  dependency-version: 3.3.18
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <[email protected]>
2026-09-02 19:08:26 +00:00
2025-10-05 04:41:22 +03:00

YTChatHub

Dashboard during a live stream

Open-source YouTube Live chat client for streamers. Watch the chat in a fast dashboard, click a message and it appears on an OBS browser-source overlay. Super Chats, super stickers, memberships, gifted memberships, badges, custom emojis and the chat leaderboard are all shown. Long links in chat arrive with their full URL, not the truncated text YouTube displays.

Running it

Requires Node.js 20+ and pnpm.

pnpm install
pnpm build
pnpm start

Open http://localhost:4100, paste the live stream URL or video id, and add the overlay URL from the dashboard's Overlay button as an OBS Browser Source. The overlay's theme, position, size, animation and auto-hide are set in that URL, so different sources can look different.

pnpm dev runs the backend on 4100 and the Next.js client on 3100 with hot reload. Optional environment variables: YOUTUBE_LIVE_ID connects at startup, PORT and HOST change where the backend listens (it binds to 127.0.0.1 by default), MOCK_CHAT=1 generates fake messages when nothing is connected.

Keyboard: / focuses search, P pauses the chat, Esc clears the overlay.

Stack

Fastify backend with youtubei.js for chat ingestion, one Server-Sent Events stream for messages, selection and connection status, and a Next.js static export served by the same backend. Chat runs entirely on your machine; YouTube CDN images are proxied and cached locally so OBS never hits rate limits.

S
Description
No description provided
Readme GPL-3.0
1.2 MiB
Languages
TypeScript 79.4%
CSS 20.3%
JavaScript 0.3%