mirror of
https://github.com/yusufipk/YTChatHub.git
synced 2026-09-11 10:56:17 +00:00
Backend: one SSE stream for messages, selection, poll and connection status; reconnect with backoff; no on-disk Innertube session cache; mock only with MOCK_CHAT=1; binds to 127.0.0.1; serves client/out so production runs on one port. Full URLs for links YouTube truncates in chat. Client: components split out, Lucide icons, stream title and status, on-air strip, search, pause, keyboard shortcuts, overlay settings dialog. Overlay themes, position, size, animation and auto-hide via URL, sized for 1080p and scaled with the source. New blueprint theme for the brand background. Removed Tailwind, better-sqlite3, zod, the timezone helpers, Cline memory bank and AGENTS.md. Added ESLint, node:test tests and CI.
41 lines
1.3 KiB
JSON
41 lines
1.3 KiB
JSON
{
|
|
"name": "youtube-client",
|
|
"version": "0.2.0",
|
|
"private": true,
|
|
"description": "YouTube Live chat client for streamers with an OBS overlay.",
|
|
"license": "MIT",
|
|
"packageManager": "[email protected]",
|
|
"scripts": {
|
|
"dev": "concurrently -n backend,client -c blue,magenta \"pnpm dev:backend\" \"pnpm dev:client\"",
|
|
"dev:backend": "tsx watch backend/src/index.ts",
|
|
"dev:client": "NEXT_PUBLIC_BACKEND_URL=http://localhost:4100 next dev client -p 3100",
|
|
"build": "pnpm build:client && pnpm build:backend",
|
|
"build:backend": "tsc -p backend/tsconfig.build.json",
|
|
"build:client": "next build client",
|
|
"start": "node backend/dist/backend/src/index.js",
|
|
"lint": "next lint client",
|
|
"typecheck": "tsc -p backend/tsconfig.json --noEmit && tsc -p client/tsconfig.json --noEmit",
|
|
"test": "tsx --test backend/src/**/*.test.ts"
|
|
},
|
|
"dependencies": {
|
|
"@fastify/cors": "^11.1.0",
|
|
"@fastify/static": "^8.2.0",
|
|
"eventemitter3": "^5.0.1",
|
|
"fastify": "^5.6.1",
|
|
"lucide-react": "^0.544.0",
|
|
"next": "^15.5.4",
|
|
"react": "^19.2.0",
|
|
"react-dom": "^19.2.0",
|
|
"youtubei.js": "^15.1.1"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^20.16.5",
|
|
"@types/react": "19.2.0",
|
|
"concurrently": "^8.2.2",
|
|
"eslint": "^9.36.0",
|
|
"eslint-config-next": "^15.5.4",
|
|
"tsx": "^4.19.1",
|
|
"typescript": "^5.9.3"
|
|
}
|
|
}
|