Платформа JavaScript Viewer предоставляет браузерный интерфейс для управления системами видеоаналитики. Система работает через отправку REST-команд на VideoAnalyticsServer, который выполняет захват RTSP-потока, детекцию движения, трекинг, работу нейросетей YOLO и взаимодействие с базой данных PostgreSQL. Поддерживаются серверные реализации на C++, Python и Rust.

Интерфейс Viewer реализован на ES Modules, fetch, async/await и hls.js без использования фреймворков, а Node.js выступает в роли обратного прокси-сервера. Пользователи могут настраивать пороги детекции движения, параметры трекинга и конфигурацию нейросетей, а также просматривать телеметрию потока и историю событий, хранящуюся в базе данных.

Конвейер аналитики задействует две независимые сессии ONNX Runtime. Первый контур (Full YOLO) обрабатывает полные кадры или выделенные области, второй (Tracking YOLO) уточняет класс объектов по вырезкам размером 256x256 пикселей. Области интереса задаются нормализованными координатами от 0 до 1, что позволяет сохранять геометрию при смене разрешения потока.

Безопасность системы обеспечивается разделением ролей администратора и наблюдателя с проверкой прав на стороне сервера. Аутентификация реализована через Bearer-токены в sessionStorage. Архитектура разграничивает полномочия: браузер отвечает за отображение, прокси — за маршрутизацию, а сервер — за валидацию запросов и работу с данными, предотвращая прямой доступ к критическим компонентам.