privacy policy

what we collect

When you connect, the server records your IP address, user agent, device screen size, and connection round-trip time.

A persistent device identifier is generated the first time you visit and stored in your browser's localStorage. It is sent with every request so the admin dashboard can track a device consistently across page reloads. No cookies are used.

During playback, telemetry events are collected — including video position, timing drift, playback rate, and seek events — and sent to the server. This data is associated with your device identifier and the current playback session.

If a JavaScript error occurs in your browser, an error report containing the error message, source file, line number, and stack trace may be sent to the server.

why we collect it

IP address, user agent, and screen size are used solely to optimise playback synchronisation across different hardware and browser pipelines — for example, detecting iOS Safari in order to work around its video buffering constraints. Telemetry is used to diagnose sync issues and monitor playback quality across devices. Error reports help identify and fix software problems.

security and abuse prevention

IP addresses and device identifiers may be stored for security, abuse prevention, and rate-limiting purposes. This includes blocking specific IP addresses or device identifiers to protect the stability of the service for all users.

infrastructure

This site is served through Cloudflare, which acts as a reverse proxy and may process your IP address and request metadata as part of its network. Cloudflare's own privacy practices are described in their privacy policy.

data sharing

We do not sell, rent, or share your data with third-party services or advertisers. Infrastructure providers such as Cloudflare process traffic as described above.

data retention

Active connection data (IP, user agent, screen size, latency) is held in memory and discarded 30 seconds after you disconnect. Playback telemetry is kept in memory for up to 20 sessions per device. Error reports are kept in memory up to a rolling limit of 300 entries. All in-memory data is permanently cleared when the server restarts. Data retained for security or abuse prevention may be kept longer at our discretion.