Intro to Lightning

Prev Next

Lightningâ„¢ is an open-source WebGL/JavaScript-based UI framework that enables anyone to build high-quality TV apps with great performance. This framework has been specifically built to enable high-quality UI rendering on lower-end set-top boxes with memory constraints.

Lightning apps outperform HTML5 apps when compared to those built on other UI frameworks/libraries like React, Redux, Pixi.JS, etc. Lightning also enables additional performance gains by relying on WebGL and Canvas2D instead of DOM elements.


Lightning Splash.png

Characteristics

  • Optimized for big screens and works on most browsers with a cross-WebGL based framework

  • Great performance, even on low end set-top boxes

  • Fast rendering and loading

  • Efficient memory management

  • Advanced garbage collection mechanism

Development

  • Innovative, fast, and high code quality development principles that aid in drastically cutting down development time

  • Develop and test on your local browser or on a Comcast device

  • Simple learning and adoption, as well as easy bundling to use the same app for other Pay TV/OEM platforms

Features

  • Application framework

  • Render tree (WebGL or Canvas2d)

  • Animations toolkit for advanced transitions/visual effects

  • Keypress-based input/focus handling

  • Special effects, custom shaders

  • Pre-integrated with the Firebolt requirements

Technical Highlights

  • Component-based, to help you split up your app in a clean way

  • Static templates that offer great overview and fast spawning

  • Doesn’t use Virtual DOM, in contrast to other frameworks

  • Patching allows convenient Virtual DOM-like patterns without the downsides

  • State Oriented Programming enforces robustness in reactive components

  • Signals and commands provide easy-to-use inter-component communication

Looking for More?

To learn more about Lightning, visit Lightningjs.io.

For any technical questions or support with the Lightning Framework, visit the Lightning Support Forum or submit a ticket to Metrological.