008
Archive 008Инструмент

NewFriend — мини-игры для Twitch

Интерактивный веб-сервис для стримеров: подключение наград Twitch (EventSub), очередь зрителей и мини-игры («Наборы» и «Таро») с live-обновлениями

websites

NewFriend — мини-игры для Twitch
01 /О проекте

Интерактивный веб-сервис для стримеров: подключение наград Twitch (EventSub), очередь зрителей и мини-игры («Наборы» и «Таро») с live-обновлениями.

Выполнено на заказ, со всеми пожеланиями заказчиков.

02 /✨ Возможности
  1. 01Мини-игры: «Наборы» (кейсы) и «Таро» с визуальными эффектами
  2. 02Интеграция с Twitch: OAuth, EventSub для наград, сообщения в чат
  3. 03Очередь зрителей и история дропов
  4. 04Дропы/скины: пресеты, шансы, учёт количества
  5. 05Live-обновления через socket.io
03 /🔧 Технологии
  1. 01Frontend: Next.js (App Router), React, TypeScript, socket.io-client, three.js, framer-motion
  2. 02Backend: Node.js + Express, socket.io
  3. 03Reverse proxy: Nginx
04 /🔄 Потоки
  1. 01OAuth через Twitch: вход, вайт-лист по user_id
  2. 02EventSub подписки на награды Channel Points
  3. 03Очередь зрителей с live-событиями через socket.io
  4. 04Игры: «Наборы»/«Таро» — выбор дропа и запись в историю
  5. 05Глобальная лента дропов и простой REST для UI
05 /🔗 Интеграции
  1. 01Twitch OAuth и EventSub
  2. 02tmi.js — сообщения в чат Twitch
  3. 03multer + sharp — загрузка и конвертация изображений в webp
  4. 04Twitch-image proxy для избежания 403
  5. 05Nginx reverse proxy (WS Upgrade для socket.io, /uploads)