The Roku Developer Program is intended for BrightScript developers. Signing up for this program isn’t typically required for app developers.
If you need to get involved in client development, we recommend signing up for the program.
Most Cloud developers work on the server, because that’s where most of the application code of a Cloud app is located.
Server development involves coding in C++, React Native, or both.
When a developer runs a server build (for example,
youi-tv build -p osx -d YI_BUILD_CLOUD_SERVER=ON), the build process adds:
Client development involves coding in the Roku native development language, called BrightScript. The client code provided in the You.i Platform provides generic functionality, including forwarding remote control button presses to the server and updating the screen when the server sends visual content. Ideally, the generic functionality is sufficient, however, there are times (like when adding third-party libraries) when you’ll need to work in BrightScript to modify the client code.
BrightScript development must be done with caution and planning.
The client code in your project, found in the
<project>/client folder, is copied from a You.i Platform template folder when you initialize your project (using the command
youi-tv init <project>).
This client code is specific to the You.i Platform release.
Any project-specific modifications to client code will require manual merging whenever you migrate to a new version of You.i Platform.
The You.i Platform template files for the client are bundled, along with other resource files, into a zip file called
The zip file is used for side-loading onto a Roku device.
The zip file must contain a
manifest file in the root folder.
See also Channel Manifest in the Roku docs.
The manifest contains attributes for the client, such as the IP address and port of the server.
When the client launches, it connects to the server, using the IP address and port from the manifest.
Further details about the
<project>/clientfolder, using the command
youi-tv roku-client <options>.
youi-tv roku-client -l.
youi-tv roku-client --host <IP address[:port]>. The
Side-loading refers to the action of uploading an app directly to a Roku device, instead of adding the app as a new channel from the Roku Channel Store. Side-loading is useful in the initial phases of Cloud app development, for faster testing turnaround.
The recommended method for side-loading is to run the
youi-tv command in a terminal window:
`youi-tv roku-client -s <roku device IP address>`
The other option is to connect with the built-in Roku web interface and use the Development Application Installer.
After side-loading the client onto the Roku device: