LightningJS alternative

A faster alternative to LightningJS and Blits

LightningJS set the bar for TV UIs on constrained hardware, and SolidTV builds on that foundation. It began as the SolidJS integration for Lightning 3 and now ships its own renderer: a fork of Lightning 3 rebuilt for 60fps on the low-end hardware TV apps really run on.

Measured, not claimed

The numbers, on real devices

Side by side

SolidTV compared with upstream Lightning 3 and Blits

Upstream Lightning 3 / Blits SolidTV
Per-frame work The update loop does real work every frame for nodes that haven't changed Static and lightly-animated subtrees cost almost nothing, with translate-only and scale-only fast paths
Garbage collection Allocations inside the render loop cause GC stutter on low-end devices Allocation-light hot paths: lazy animation maps, a slim glyph layout and a lean texture upload queue
Components Blits adds an extra parent node for every component, doubling the node count Components compile away, so a component costs the same as the nodes inside it
Size Blits is about 80KB larger ~12kb minified + gzipped for the framework
Apple TV Needs a browser to run in Runs on tvOS through NativeScript. See how

Atomic First Paint

Text measurement and flex layout resolve before the first WebGL draw call, so nothing shifts on a 65-inch screen.

The SolidJS ecosystem

Signals, stores, JSX and TypeScript, with a large open-source community behind them instead of a TV-only dialect.

Someone to call

A community Discord, plus commercial support from the engineer who wrote the framework.

Comparisons are drawn from the linked articles and the public benchmark repository. Run them on your own hardware and tell us what you see.

Inside the renderer

What changed in the fork

Owning the renderer means fixes ship when your app needs them, not once a quarter. A short tour of what has landed since the fork:

Text rendering

A cached SDF text layout, cap-height centering for labels that look centered, verticalAlign that works in flex layouts, and emoji that keep their colors.

Shaders & visuals

A self-animating RadialProgress shader, a single-pass Blur, borders that default to outside, and gradient parity between WebGL and Canvas.

Images & SVG

DPR-aware SVG rasterization, source-region crops, zero-copy uploads, and image decoding that overlaps with GPU upload.

Animation & tooling

Adaptive durations that stay correctly timed at variable frame rates, plus an inspector that shows component names and source locations.

Migrating

Moving to SolidTV

From the Lightning + SolidJS integration

If your app was built on the earlier SolidJS integration for Lightning 3, moving is mostly a package rename. The README and the docs cover the steps and the renderer upgrade notes.

From Lightning 2, Blits or React

A rewrite of the view layer is a bigger decision. The Migration Assessment gives you a plan and an estimate before you commit, from the engineer who wrote the framework.

Used by companies worldwide

Angel Studios Bell Fibe TV Watch Brasil CHEK News

Stuck on a slow Lightning app?

Send us the symptoms. A free consultation will tell you whether the fix is in your app, in the renderer, or in a migration.