• Роботи
  • Компетенції
  • Інженерні рішення
  • Послуги
  • Вартість
  • Про мене
  • Контакти
Обговорити проєкт
  • Роботи
  • Компетенції
  • Інженерні рішення
  • Послуги
  • Вартість
  • Про мене
  • Контакти
Обговорити проєкт
Valerii Vvedenskyi

Кейси описують реальні продукти, над якими я працював; кожен факт на цьому сайті взято з них.

Розділи

  • Роботи
  • Компетенції
  • Інженерні рішення
  • Послуги
  • Вартість
  • Про мене
  • Контакти

Мови

  • English
  • Українська
  • Русский
  • Қазақша
  • Français
  • Deutsch
  • Español
  • Português

Контакт

valerii.vvedenskyi@gmail.com

Toronto, Canada

LinkedIn

© 2026 Valerii Vvedenskyi. Усі права захищено.

Політика конфіденційності

Спроєктовано й зібрано Валерієм Введенським на Next.js.

  • English
  • Українська
  • Русский
  • Қазақша
  • Français
  • Deutsch
  • Español
  • Português
  • English
  • Українська
  • Русский
  • Қазақша
  • Français
  • Deutsch
  • Español
  • Português
Усі роботи

День змагань

Чекін, суддівство, підрахунок балів і пряма трансляція для подій Fitofan

П'ять застосунків, які проводять турнір на місці: чекін і суддівство на десктопі, суддівські консолі на телефонах і планшетах, міст до обладнання для підрахунку балів, камери телефонів, що транслюють із живим табло, і багатокамерний повтор.

Роль
Ведучий інженер: Flutter, нативні iOS та Android, десктоп
Період
2024 – 2026

Контекст

Турніри проходять у спортзалах із ненадійним Wi-Fi, позиченим обладнанням і без часу на налаштування. Екосистемі Fitofan потрібне було власне програмне забезпечення для залу, і я зробив кожну його частину з нуля.

Виклик

Тримати чекін, суддівство та трансляцію в роботі, коли зникає інтернет, дати будь-якому телефону чи планшету приєднатися скануванням QR-коду та повертати результати на платформу й у сторонні системи підрахунку.

Реалізовано на всіх рівнях стека

  • Fitofan Core, Flutter для десктопу на macOS, Windows і Chromebook: чекін з оплатою та друком QR-бейджів, суддівство дзюдо та MMA, жеребкування й сітки, окремий процес для другого ТВ-екрана
  • Fitofan Touch, Flutter для телефонів і планшетів: суддівська консоль із 10 наборами правил, від тхеквондо WT та ITF і карате WKF до гімнастики та брейкінгу, з хептикою та моделлю введення, що враховує стан з'єднання
  • Fitofan Connect, Flutter для десктопу: база результатів на SQLite та локальний HTTP API, що з'єднує зі сторонніми електронними системами підрахунку
  • LiveOn, нативні Swift і Kotlin: трансляція в Amazon IVS із налаштуванням за QR і тришаровим мікшером камери, логотипа та накладеного живого табло
  • VR, Electron: до чотирьох камер — телефон, USB або RTSP — через WebRTC, миттєвий повтор і нарізка кліпів через ffmpeg, рестрім на YouTube, офлайн-ліцензування, підписані й нотаризовані збірки для macOS, Windows і Linux

Інженерні акценти

  • Offline-first: збережена вихідна черга скидається на платформу, коли з'єднання повертається
  • Власноруч написаний LAN-протокол: UDP-виявлення широкомовленням, TCP-сесії з перепідключенням, loopback-зв'язок із вікном ТВ
  • Накладки табло рендеряться нативно й компонуються у відеопотік раз на секунду
  • Живий потік балів через Socket.IO керує накладкою на iOS і автоматичним визначенням меж бою в застосунку повторів

Що це дає

Організатор приїжджає з ноутбуками й телефонами та проводить реєстрацію, суддівство, підрахунок балів і трансляцію з однієї екосистеми, з інтернетом чи без.

Підтвердження

  • Працює без інтернету: дані події кешуються локально, результати стають у чергу й синхронізуються, коли з'єднання повертається
  • Пристрої знаходять одне одного в мережі залу через UDP-виявлення та TCP-сокети
  • Телефони стрімлять в Amazon IVS із живим табло, накладеним на картинку

Стек

  • Flutter
  • Swift
  • Kotlin
  • Electron
  • Amazon IVS
  • WebRTC
  • SQLite
  • ffmpeg

Наступний кейс

Y-Tree
Обговорити проєкт