# ScreenTinker

> Self-hosted digital signage CMS for TVs and kiosks across many platforms with playlists, scheduling, and integrations for Microsoft 365, Google Workspace, and Power BI.

- **Category:** Digital Signage
- **Licence:** MIT
- **Latest version:** v3.0.3
- **Open source:** oss
- **Languages:** JavaScript
- **Platforms:** Docker Compose, Windows, Android, Raspberry Pi, Build from Source, Systemd
- **Tags:** SQLite, Cms, Raspberry Pi, Scheduling, Playlists, Remote Access, OIDC, Node.js, Open Source, Google workspace, Microsoft 365, SAML, Kiosk, Self Hosted, Android Tv, Iptv, Digital Signage, Multi Tenant, Signage, Fire TV, Video Walls, Live Video, Power Bi

## Description

A free, open-source digital signage platform for centrally managing displays across multiple locations from a web dashboard. It runs on over a dozen platforms including Raspberry Pi, Windows, ChromeOS, and various smart TV operating systems plus any modern browser. Features include playlists with draft/publish workflow, a slide editor with templates and animations, device groups for bulk commands, multi-zone layouts with seven templates, video walls with bezel compensation, remote control with live view and touch injection, optional WebRTC live video and intercom/PA via a go2rtc sidecar, live TV/IPTV and camera feeds (HLS, RTSP), visual scheduling with recurrence, resumable chunked uploads, device-side REST for LAN HTTP calls, display power schedules, widgets (clocks, weather, RSS, social walls, directory boards), data sources binding live external data (iCal, JSON APIs), meeting room signs, kiosk mode, proof-of-play analytics, device telemetry, offline resilience via local caching, multi-tenant workspaces with six role levels, approval workflows with version history, email alerts via Microsoft Graph or SMTP, white-label customization, content management with folders and remote URLs, PDF-to-playlist conversion, flexible storage (local, S3-compatible, Azure Blob), export/import, per-device auth tokens, JWT/bcrypt security, optional Stripe billing, OTA updates, a public REST API with scoped tokens (OpenAPI 3.1), and Node Mesh for linking servers. The server requires Node.js 22.14+ with SQLite (better-sqlite3) and optional ffmpeg. Self-hosting docs cover quick start, systemd, nginx/Caddy, and backup/upgrade scripts. A hosted SaaS version offers a free tier and 14-day Pro trial.

## Links

- [Homepage](https://github.com/screentinker/screentinker)
- [Website](https://screentinker.com)
- [Docker](ghcr.io/screentinker/screentinker)
- [Demo](https://screentinker.com)
- [Documentation](https://screentinker.com/docs)
- [GitHub Repository](https://github.com/screentinker/screentinker)
- [Discord Community](https://discord.gg/utTdsrqq4Z)
- [YouTube Channel](https://www.youtube.com/@ScreenTinker)
- [Self-Hosting Guide](https://screentinker.com/guides/self-hosted-digital-signage.html)
- [Integrations Overview](https://screentinker.com/integrations/)
- [Certified Hardware](https://screentinker.com/certified-hardware)

---
Source: https://selfhost.directory/project/screentinker