Location: Remote or hybrid (by agreement)Project: Development of a custom video player for broadcasting video content in retail outlets (screens in stores, cafes, fitness halls, etc.)The main functionality of the player isto create a stable, easy-to-use video player that:automatically plays video from local storagesupports offline modehas a centralized content management system (via API or CMS)works on devices such as Android TV box, Raspberry Pi, Windows mini-PC1. PurposeLocal client that:gets
Location: Remote or hybrid (by agreement)
Project: Development of a custom video player for broadcasting video content in retail outlets (screens in stores, cafes, fitness halls, etc.)
The main functionality of the player isto create a stable, easy-to-use video player that:
- automatically plays video from local storage
- supports offline mode
- has a centralized content management system (via API or CMS)
- works on devices such as Android TV box, Raspberry Pi, Windows mini-PC
1. Purpose
Local client that:
- gets config from server;
- caches content;
- plays video/images/HTML;
- works 24/7 in fullscreen/kiosk mode;
- sends heartbeat and screenshots;
- works offline according to the latest configuration.
2. Technologies
- Electron (Node.js + Chromium)
- HTML5
- hls.js (optional)
- REST API (HTTPS + JSON)
3. Main work cycle
3.1Start
- generates/reads device_id
- loads local config
- starts playlist immediately
- in parallel receives new config from server
3.2 Caching
- all media files are downloaded to the local cache
when offline, the cache is used
3.3Playback
Types: video (mp4/HLS) and image (jpg/png/webp)
700">Requirements:
fullscreen, no UI transitions
3.4 CapturePage ()PNG/JPEGsending by schedule or by command
4. Non-functional requirements
- 24/7 operation, automatic restart in case of failure
- 1080p support (minimum), preferably 4K
- HTTPS required
- devtools blocked
- kiosk mode
5. Installation and autostart
Linux
.deb / .AppImage
systemd autostart service
Windows
.exe installer
autostart via Startup/registry
macOS
.dmg
auto launch via LaunchAgent
6.Update (optional)
- electron-updater
- background download
- update on restart
Requirements for the candidate
- Experience in developing video players or multimedia applications
- Knowledge of platforms: Linux, Windows
- Experience with API, WebSocket, REST, JSON
- Understanding principles of caching, offline access, logging
Preferred
- Experience in the field of digital signage or retail technologies
- Examples of implemented projects (GitHub, videos, screenshots)