Sample Apps

These sample apps will help you get started with developing on the Senza platform. Each app illustrates a few key concepts, and has a relatively short amount of code that you can copy and reuse in your app.

Many of the apps have Tutorials with detailed step-by-step instructions that cover every line of code. There are also Video Tutorials for several of the apps.

You can browse the source code for all of the apps on the Senza GitHub space. Check out some of the repos, make some changes, and try running them yourself to get a real feel for the platform.

The sample code generally uses JavaScript ES6 programming techniques, such as modules, classes and asynchronous programming, but all the sample code can be adapted into ES5 apps. See the banner-es5 and tears-es5 repos for examples.

There's a feed of updates to the sample apps in the #sample-code channel in the Developer Forums.

You can conveniently launch all of the apps from the launcher at senzadev.net.

Video

Here's a video walkthrough of all the sample apps if you want to just lean back and watch!

Unified Player

This app demonstrates how to switch between playing video in the browser with user interface elements on top, and streaming video directly to the device in background mode.

Video Tutorials

Watch video tutorials that explain how to develop on the Senza platform, right on Senza. How very meta.

About This Device

Shows information about the current device from the Device Management API, such as tenant name and IP address. You should implement a page with this information inside your primary app to help users get info about their cloud connector.

Artwork Guidelines

Guidelines on how to create artwork for your app for display in the Content Hub. Also demonstrates how to view a PDF file in a Senza web app.

Chocolate

A digital signage demo that alternates between HTML content and streaming video in a loop.

Dunnet

A text-based adventure game that you can play with the remote control! Use the arrows to type directions, OK to confirm. Hit back to toggle command mode, then use the arrows to browse commands.

Eagles

Watch full screen streaming video from YouTube, featuring the eagles of Big Bear Valley. Use OK to play/pause.

Flags

Shows the flag of the country where the user's device is located.

Flights

View the flight information display system.

Fresco

Plays a video tiled across four screens, each of which shows one quarter of the whole video.

Hello

Using the client authentication flow to authorize a device and get user info. Also demonstrates how to show a QR code that lets the user authenticate their device on a mobile phone.

iConquer

Example of adapting a board game to use remote control navigation with non-grid based content. Use arrow buttons to move between countries.

Imagine

What if you could talk to your TV, and it would show a picture of whatever you can imagine? With this app you can scan a QR code on your phone, just say what you're thinking, and the TV will generate a picture for you.

Mosaic

Demonstrates the ability of the browser to play multiple instances of the same video simultaneously in a grid layout. Use up/down to change number of videos, left/right to change timecode offset between videos, OK to play/pause.

Signs

Example that shows how to coordinate a slideshow of content across multiple screens. Use up/down to change channel, left/right to change slide, back to change settings. Warning: images of delicious food may cause sudden hunger!

Smart Remote

A smart remote control that emulates the buttons on the standard remote, and adds a keyboard for text input, a trackpad for gestures, and a microphone for voice commands. It's like four remotes in one!

Stream Saver

This app shows a video screen saver after 30 seconds of inactivity, demonstrating how you can save money by transitioning the browser into background mode if the viewer is not interacting with your app.

Stopwatch

This app demonstrates a technique for Profiling Your App, with banner that displays the amount of time spend in foreground and background mode, along with the percent of total time in foreground.

Subway Status

Example of a public transit signage use case for vertical screens, featuring realtime disasters from the New York City Subway. Use left/right to rotate, OK to refresh.

Tears of Steel

Demonstrates how to play encrypted video in the remote player by requesting a license from the Widevine server.

Three.js

Browse through hundreds of 3D scenes created using the Three.js library. Use up/down to select scenes.

Tic Tac Toe

Simple example that shows how to use the remote control to select content in a grid, featuring a game of tic tac toe. Use arrow buttons to move, OK to mark a box as X or O, back to clear.

Vertical

Example that shows how to adapt content for display on vertical screens, with animations. Use left/right buttons to rotate. Warning: may cause vertical video syndrome.

WebGL Globe

Demonstrates how to adapt an existing 3D web app to use remote control input.

Zombies

Demonstrates how to send emergency alert notifications using the Group Messaging API.

Zoom

Zoom between two videos, one playing full screen and the other in a corner. Demonstrates the capability to play back multiple videos, with smooth transition animations. Use up/down arrows to switch videos, left/right to skip, and enter to play the larger video in background mode.


What’s Next