JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 3
  • Score
    100M100P100Q58671F
  • License MIT

Roku toolkit library providing a ViewBuilder, full UI lifecycle with focus handling and many core features, plus MVI-based state management.

Package Exports

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (rotor-framework) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    Rotor Framework

    build status Coverage Status npm version License: MIT Slack

    Rotor is a modular, ViewModel-first UI framework for Roku applications built with BrighterScript and SceneGraph. It is lightweight and designed to intuitively speed up development time while simplifying both the implementation and long-term maintenance process. It features a rich ViewBuilder system and a Roku-friendly implementation of the MVI (Model-View-Intent) design pattern. It helps developers structure large-scale apps with reusable components, state-driven logic, and optimized rendering.

    🌱


    πŸš€ Key Features

    • ViewBuilder system: Declarative and extensible view construction with a flexible, code-based template system, automatic full lifecycle management, and a virtual node tree abstraction.
    • Roku-friendly MVI design pattern: Predictable state, clear separation of concerns, and cross-thread compatibility.
    • Component-based UI: Isolated, reusable UI widgets and view models.
    • i18n support: Locale-aware interface with flexible language resource injection.
    • Integrated Animate Library

    🎯 Quick Start with Starter Template

    Want to get started quickly? Check out rotor-starter - a ready-to-use project template with Rotor Framework pre-configured, sample components, and best practices built in.


    πŸ“¦ Installation

    Prerequisites

    Rotor Framework requires BrighterScript v1. Install the latest version:

    npm install --save-dev brighterscript@next @rokucommunity/bslint@next

    Install Rotor Framework

    Manual installation:

    1. Download the latest rotor-framework.zip from GitHub Releases
    2. Extract the ZIP into your project's source/ directory (this will create a rotor-framework/ folder)
    3. Import Rotor in your main file:

    ROPM install:

    • Note: You must install without prefix by adding this to package.json
    • Don't worry everything is in the Rotor namespace by default, so this is the only name reserved by the framework.
    ropm install rotor-framework
    "ropm": {
        "noprefix": ["rotor-framework"]
    }

    ⚑ Quick usage

    import "pkg:/source/RotorFramework.bs"
    
    frameworkInstance = new Rotor.Framework()
    
    frameworkInstance.render([
        {
            id: "helloLabel", ' optional
            nodeType: "Label",
            fields: {
                text: "Hello World!",
                color: "#CCCCCC"
            }
        }
    ])

    Token-efficient documentation for AI

    You can find 🌱 symbols in all documentation pages. These symbols link to AI-optimized summaries of the respective documentation.

    πŸ“– Read more about token savings


    πŸ“š Learn More

    Version

    Framework Core

    ViewBuilder Reference

    ViewBuilder Plugins

    MVI Documentation

    i18N Documentation


    πŸ”§ Requirements

    • Roku SceneGraph (firmware 10.5+ recommended)
    • BrighterScript V1

    πŸ“„ License

    Rotor Frameworkβ„’ is licensed under the MIT License.

    Β© 2025 BalΓ‘zs MolnΓ‘r β€” Rotor Frameworkβ„’