Skip to main content

Comparison To Roku SDK

Hosanna UI and the Roku SDK both enable TV app development, but they differ significantly in architecture, developer experience, and platform reach. Here’s a direct comparison:

Language and UI Model

  • Direct Roku development: BrightScript/BrighterScript plus SceneGraph XML and nodes.
  • Hosanna: TypeScript classes decorated with @view; getViews() returns typed view structs. The Hosanna Compiler produces BrightScript and SceneGraph output for Roku. Hosanna does not use React or JSX.

Cross-Platform Support

  • Roku SDK: Only for Roku devices.
  • Hosanna UI: Write once, run on Roku, Apple TV, Android TV, Samsung TV, iOS, Android, and Web.

UI Development

  • Roku SDK: screens and components are built directly from SceneGraph components, XML, and BrightScript.
  • Hosanna: shared views return Label(...), Button(...), groups, controls, or generated app-component factories from getViews(). The same view model has platform implementations for other supported targets.

State and Lifecycle

  • Roku SDK: applications manage SceneGraph fields, observers, tasks, and component lifecycle directly.
  • Hosanna: generated state contracts and @state fields drive reconciliation. BaseView supplies mount, unmount, focus, layout, and lookup behavior.

Tooling & Developer Experience

  • Roku SDK: Limited IDE support, basic debugging, and no hot reload.
  • Hosanna UI: Terminal-first hst tooling, hot reload where supported, optional editor integration, Hosanna DevTools, and MCP debugging. No React-specific tooling is required.

Performance

Both approaches still require device measurement. Hosanna provides view/node pooling, virtualized collections, source maps, and shared diagnostics, but an app can still create expensive trees, decode oversized images, or do too much work during input and animation.

Summary Table

FeatureRoku SDKHosanna UI
LanguageBrightScriptTypeScript/JavaScript
UI FrameworkSceneGraph/XMLJavaScript Classes
PlatformsRoku onlyRoku, Apple TV, Android TV, Samsung TV, iOS, Android, Web
State ManagementSceneGraph fields/observers and app logicGenerated state plus @state fields
ToolingBasicModern CLI, DevTools, MCP, optional editor support
Debug sourceBrightScript/SceneGraphTypeScript source maps plus generated BrightScript

When to Use Hosanna UI

  • You want to target multiple TV, mobile, and web platforms with a single codebase.
  • You prefer modern JavaScript/TypeScript and plain JavaScript class patterns.
  • You want a faster, more productive development experience.

When to Use Roku SDK

  • You are building exclusively for Roku and need deep integration with Roku-specific features.
  • You have an existing BrightScript codebase.

For a Roku-only integration that depends heavily on firmware-specific SceneGraph behavior, direct Roku development can remain the right boundary. For a product that shares screens and behavior across targets, Hosanna reduces the amount of target-specific application code while retaining Roku escape hatches where required.

Talk to us