Skip to content

Dnlln/light-wave

Repository files navigation

Световая Волна (Light Wave)

PWA-приложение для управления фонариками телефонов на стадионе — создание световых волн и шоу.

Архитектура

  • Frontend: React + Vite + Tailwind CSS + shadcn/ui
  • Backend: Express + WebSocket
  • БД: SQLite (Drizzle ORM)
  • QR-коды: Python-скрипт генерации

Структура арены (BSA)

Овальная арена с 3 ярусами:

Ярус Секторы Количество
Ярус 1 (внутренний) 101–156 56
VIP-ложи визуальный слой
Ярус 3 (внешний) 201–268 68

Трибуны (по часовой стрелке)

Трибуна Сторона Цвет Ярус 1 Ярус 3
A Юг Жёлтый 101–116 (16) 201–216 (16)
B Запад Синий 145–156 (12) 253–268 (16)
C Север Розовый 129–144 (16) 233–252 (20)
D Восток Зелёный 117–128 (12) 217–232 (16)

Функции

  • Световая волна — по часовой/против часовой стрелки, север-юг, восток-запад, случайная
  • Толщина волны — от 1 сектора до целой трибуны
  • Цикл — бесконечное повторение с мягкой остановкой
  • Моргнуть всеми — одновременная вспышка всего стадиона
  • Аппаратный фонарик — использование Torch API камеры, экранная вспышка как фоллбэк
  • Синхронизация ярусов — секторы 3-го яруса мигают синхронно с 1-м ярусом

Запуск

npm install
npm run dev

Деплой

npm run build
# Скопировать dist/ на сервер

QR-коды

cd qr-generator
pip install qrcode pillow
python generate_qr.py

Генерирует 124 QR-кода (56 ярус 1 + 68 ярус 3) в папку qr_codes/.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages