A curated list of awesome resources for building Smart TV apps
Smart TV is a growing platform of TVs having access to internet and allowing to serf web-sites and install applications. It has own ecosystem with main players like Samsung, LG, Android TV and Apple TV. In this list you will find official and third-party resources for developing Smart TV apps and communicating with TV from remote devices.
Below are the most popular platforms for Smart TV. The full list is here.
- Samsung TV Developers site - News, documentation and SDK downloads.
- Tizen TV Developers site - Full API documentation and guides for developing Tizen TV apps.
- Tizen Studio - IDE for TV apps development including Tizen TV Emulator.
- Samrt View SDK - Oficcial Android, IOS and JavaScript SDK for communication between remote device and Samsung Smart TV.
- Samsung TV Developers Forum - Ask questions and share tips when developing apps with Samsung SDKs.
- samsungctl - Library and command line tool for remote controlling Samsung televisions via a TCP/IP connection. It currently supports both pre-2016 TVs as well most of the modern Tizen-OS TVs with Ethernet or Wi-Fi connectivity (Python).
- samsung-tv-remote - Node.js module to remotely control Samsung Smart TV starting from 2016 (JavaScript).
- homebridge-samsungtv2016 - Plugin for Homebridge that allows you to control your 2016 Samsung TV with HomeKit and Siri (JavaScript).
- webOS TV Developers Site - WebOS TV apps development principles, tutorials, API documentation and packaging tools.
- webOS TV IDE + SDK - IDE for apps development including a Command Line Interface and emulator.
- Connect SDK - Open source framework developed by LG that connects your mobile apps with multiple media device platforms. Currently supports 8 platforms. But seems abandoned.
- webOS TV Developers Forum - Ask questions, share information and learn about Smart TV app development with other developers.
- lgtv2 - Node.js module for remote control of LG webOS TV via WebSocket messages (JavaScript).
- node-red-contrib-lgtv - Module for Node-RED allowing remote control of LG webOS Smart TVs (JavaScript).
- node-webos - Node.js module to discover and control webOS TVs (JavaScript).
- lgtv2mqtt - Interface between LG WebOS Smart TVs and MQTT (JavaScript).
- ares-webos-sdk - webOS CLI as separate NPM module (JavaScript).
- pylgtv - Library to control webOS based LG Tv devices (Python).
- LGWebOSRemote - Command line tool for webOS remote control of LG TVs (Python).
- LG webOS communication protocol - Unofficial but detailed description of communication endpoints of webOS TV.
- LG Magic Motion Remote - Point, Click, and Control - Operate TV like a computer mouse.
- openlgtv.org.ru - A non-commercial project for legal reverse engineering and research on LG Television firmware. Seems a bit outdated but contains a lot of information.
- Android TV Developers site - Documentation, tutorials and best practises for building Android TV apps.
- tvOS Developers Site - SDK, documentation and tutorials for developing tvOS apps.
- Google Cast SDK - Official Google Cast SDK documentation and tutorials.
- TVs with Chromecast built-in - List of vendors supporting built-in Chromecast and advantages over traditional TV remote controller.
- TOAST - Samsung open-source framework for multi-platform TV apps developemnt.
- Enyo - LG framework for development apps for all major platforms, from phones and tablets to PCs and TVs.
- Smartbox - Smart TV universal library for Samsung, LG, Philips, SmartTV Aliance, STB Mag app development.
- DLNA - Industry-wide standard for sharing data over a home network. Depending on the DLNA-compatible devices you own, you might be able to stream films from your laptop to your TV, play an MP3 stored on your phone over your hi-fi system, or print a photo from your tablet on your home printer.
- DIAL - Developed by Netflix and Google, this protocol alows client devices (like smartphone, tablet, or computer) to discover apps on server devices (like a smart TV or streaming box) and launch content on them.
- Wi-Fi Direct - Standard enabling devices to easily connect with each other without requiring a wireless access point.
- Miracast - Standard for wireless connections from devices (such as laptops, tablets, or smartphones) to displays (such as TVs, monitors or projectors). Works over Wi-Fi Direct.
- LIRC - A package that allows you to decode and send infra-red signals of many (but not all) commonly used remote controls.
Feel free to share your experience and contribute useful extension resources by creating new issue or pull request. Please read the contribution guidelines first. Thanks!