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 & Framework
- Roku SDK: Uses BrightScript, a proprietary language, and SceneGraph for UI.
- Hosanna UI: Uses modern TypeScript (and JavaScript) with plain class-based patterns, making it accessible to web developers. No React or JSX is used.
info
Hosanna UI is built with TypeScript, providing type safety and modern development features out of the box.
Cross-Platform Support
- Roku SDK: Only for Roku devices.
- Hosanna UI: Write once, run on Roku, Android TV, Apple TV, and web browsers.
UI Development
- Roku SDK: UI is built with XML and SceneGraph nodes. Customization and animations can be complex.
- Hosanna UI: UI is built with plain JavaScript classes. Each UI element is a class with a
getView()
function for rendering. No React components are used; instead, you define and compose UI by creating and managing these classes directly.
State Management
- Roku SDK: Manual state management, often with global variables or custom logic.
- Hosanna UI: State is managed using standard JavaScript class properties and methods. There is no React state or hooks—state is encapsulated within each class or managed through your own logic.
Tooling & Developer Experience
- Roku SDK: Limited IDE support, basic debugging, and no hot reload.
- Hosanna UI: Modern tooling, hot reload, VS Code integration, and rich debugging tools. No React-specific tooling is required.
Community & Ecosystem
- Roku SDK: Smaller, Roku-specific community.
- Hosanna UI: Growing, cross-platform community with access to many JavaScript resources.
Performance
- Roku SDK: Optimized for Roku hardware, but limited by language and platform constraints.
- Hosanna UI: Optimized for TV hardware across platforms, with performance best practices built in.
Summary Table
Feature | Roku SDK | Hosanna UI |
---|---|---|
Language | BrightScript | TypeScript/JavaScript |
UI Framework | SceneGraph/XML | JavaScript Classes |
Platforms | Roku only | Roku, Android TV, Apple TV, Web |
State Management | Manual | Class Properties/Methods |
Tooling | Basic | Modern (VS Code, Hot Reload) |
Community | Roku-specific | Cross-platform, JS |
Performance | Roku-optimized | Multi-platform optimized |
When to Use Hosanna UI
- You want to target multiple TV 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.
Hosanna UI aims to make TV app development more accessible, productive, and future-proof by leveraging the best of the web ecosystems.