Community BrightScript/Roku SDK
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 44.8k
- Forks
- 4.9k
- Avg merge
- 21h 23m
- Merged PRs (30d)
- 607
Description
Problem Statement
Context
This follows up on https://github.com/getsentry/sentry/issues/66399 (locked). Sentry confirmed there is no plan for an official Roku SDK and pointed the community at the envelope ingest API and the SDK development guide.
We needed error reporting on Roku anyway, so we built an unofficial BrightScript client and have been running it in production on our Roku channel.
This is not an official Sentry product and we are not asking Sentry to take ownership. We are sharing it in case it is useful as a community SDK, and to ask where (if anywhere) you would like unofficial SDKs linked.
What it does
Small BrightScript module. Sends events to the envelope endpoint (/api/{project}/envelope/) with X-Sentry-Auth.
Public API (Sentry-shaped, BrightScript-friendly):
SentryInit({ dsn, environment, sampleRate })SentryCaptureException(exception)— string or{ message, code, ... }(extra fields go toextra)SentrySetTag/SentrySetExtra/SentrySetUser
Each event includes device/OS/runtime context (roDeviceInfo / roAppInfo), release from the channel version, and tags for platform/sdk/environment.
We use sampling in production (sampleRate) so noisy SceneGraph invalid-state checks do not flood the project.
What it does not do
BrightScript limits this compared to first-party SDKs:
- Transport is synchronous
roUrlTransfer.postFromString(fine in Tasks; can hitch the UI thread) - No real stack traces - the runtime does not expose a call stack, so frames are placeholders
- No breadcrumbs API,
captureMessage,beforeSend, tracing/performance, or 429 backoff yet
Honest positioning: error reporting client, not a full SDK.
Ask
- Is a community Roku/BrightScript SDK something you are willing to list or mention (docs, Discord, a note on #66399), or should we just publish it independently (GitHub + npm/
ropm)? - Any naming/trademark constraints for an unofficial package (we planned
sentry-rokuwith a clear “not affiliated with Sentry” disclaimer)? - If useful, we can open-source the module and keep maintaining it. Happy to adjust envelope/SDK metadata (
sdk.name, package name) to whatever you recommend for third-party clients.
SDK guide we followed: https://develop.sentry.dev/sdk
Envelope docs: https://develop.sentry.dev/sdk/envelopes
Solution Brainstorm
No response
Product Area
Unknown
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the linked SDK development guide and envelope documentation, then review the prior issue #66399 for existing guidance. The issue asks for a decision about listing, naming, trademarks, and SDK metadata rather than naming a repository change; done would be a maintainer-approved response or documented policy.
Written by the indexing model from the issue text.
Assessment
- Domain
- documentation
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100