MCPInstall

react-native-tv-best-practices

Reviews React Native TV apps for focus/D-pad navigation, 10-foot UI layout, TV playback/DRM integration, low-memory TV performance, and TV accessibility. Use when building, debugging, or reviewing react-native-tvos, Expo TV, Amazon Vega/Kepler, or React Native web TV targets where the issue depends on remote input, TV focus, TV packaging, TV hardware, or TV playback constraints.

Installs
2.3K
Last 24h
+23
Trending rank
#5143
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/callstackincubator/agent-skills --skill react-native-tv-best-practices
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads react-native-tv-best-practices automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

React Native TV Best Practices

Overview

TV-specific review guidance for React Native-backed apps on Apple TV, Android TV, Fire TV, Amazon Vega/Kepler, and web-based TV targets such as Tizen or webOS.

Use this skill only for TV deltas: remote input, focus engines, 10-foot layout, platform packaging, playback/DRM, low-memory TV hardware, and TV accessibility. For ordinary React Native performance or architecture issues, use react-native-best-practices.

Skill Format

Reference files are grouped by topic prefix:

  • focus-*: focus engines, focus guides, focus event performance
  • nav-*: D-pad navigation, Back/Menu behavior, keyboard/search input
  • design-*: 10-foot typography, layout, color, focus visibility
  • perf-*: startup, memory, lists, animation, and network constraints on TV hardware
  • video-*: playback architecture, DRM/protocol selection, debugging
  • a11y-*: TV accessibility implementation and audit checks
  • setup-*: stack detection, setup, architecture, cross-platform behavior
  • test-* and release-*: test coverage, E2E, and CI/release workflows

When to Apply

Apply this skill when the app targets a TV platform and the work involves:

  • Focus movement, visible focus, focus restoration, or remote/D-pad input
  • TV layout readability, overscan/safe areas, or 10-foot UI density
  • TV player controls, manifests, DRM, decoder support, or playback errors
  • Performance on low-memory TV hardware, especially with video or large carousels
  • TV accessibility with screen readers, captions, focus order, or remote-only interaction
  • Platform setup for react-native-tvos, Expo TV, Amazon Vega/Kepler, Tizen, or webOS

Before You Start — Identify the TV Stack

This skill covers several TV stacks. Detect which one the app targets before flagging setup issues — demanding react-native-tvos, a tvOS Podfile, or an Android TV manifest on a Vega/Kepler or web-based TV app produces false positives.

StackHow to detectSetup expectations
react-native-tvos (Apple TV, Android TV, Fire TV)"react-native": "npm:react-native-tvos@…" in package.jsontvOS Podfile (platform :tvos); Android TV leanback/LEANBACK_LAUNCHER manifest entries; TV emulator/simulator
Expo + react-native-tvosabove plus @react-native-tvos/config-tv in app.jsonEXPO_TV=1 prebuild; react-native-tvos version must match the Expo SDK; not all Expo features/libraries are available on TV
Amazon Vega / KeplerVega/Kepler SDK & tooling (@amazon-devices/* deps, Kepler manifest); no react-native-tvosAmazon's Vega/Kepler toolchain — react-native-tvos, tvOS Podfile, and Android TV manifest do not apply
Web-based TV (Tizen, webOS)web bundler (Rsbuild/webpack) + platform packaging; spatial-nav libraryPlatform SDK packaging; @noriginmedia/norigin-spatial-navigation for focus

The focus, 10-foot design, performance, accessibility, and player guidance applies across all of these — only the setup/build expectations are stack-specific.

Review Rules

  • Resolve the target stack before setup advice.
  • Prefer natural focus order and focus guides before imperative focus calls or broad nextFocus* maps.
  • Treat focus loss, invisible focus, and broken Back/Menu behavior as navigation bugs.
  • Check readability, safe areas, and focus states at TV distance before tuning visual details.
  • Profile on the weakest supported TV device before reporting performance fixes as complete.
  • Separate playback failures by layer: manifest request, DRM license exchange, decoder capability, player state, and React UI controls.

Priority-Ordered Guidelines

PriorityCategoryImpactPrefix
1Focus and D-pad navigationCRITICALfocus-*, nav-*
2List, animation, and input performanceCRITICALperf-*
3Playback and DRM failuresHIGHvideo-*
410-foot readability and layoutHIGHdesign-*
5TV accessibilityHIGHa11y-*
6Stack setup, testing, and releaseMEDIUMsetup-*, test-*, release-*

Quick Reference

  1. Detect the TV stack from package files, manifests, native folders, and platform tooling.
  2. Reproduce navigation with the remote or D-pad path, not mouse/touch assumptions.
  3. Confirm the focused element is always visible, reachable, and restored after modals/routes.
  4. Check playback failures from the network/DRM layer upward before changing React controls.
  5. Measure list, animation, memory, and startup work on the weakest supported TV target.

References

Focus and Navigation

FileImpactDescription
focus-management.mdCRITICALFocus engines, focus guides, nextFocus*, and focus restoration
focus-performance.mdCRITICALAvoiding frame drops from focus event handling
nav-directional.mdCRITICALDirectional navigation rules across TV platforms
nav-patterns.mdCRITICALGlobal/local navigation, modals, tabs, and Back behavior
nav-keyboard.mdMEDIUMSearch and text input with remotes

Design

FileImpactDescription
design-10foot.mdHIGH10-foot review heuristics
design-typography.mdHIGHTV type sizing and readability
design-layout.mdHIGHSafe areas, spacing, carousels, and focus room
design-color.mdMEDIUMContrast and TV display color constraints

Performance

FileImpactDescription
perf-overview.mdHIGHTV performance targets and profiling order
perf-lists.mdCRITICALVirtualized rows and poster-heavy lists
perf-animations.mdCRITICALFocus and transition animation performance
perf-memory.mdHIGHLow-memory TV crashes and image/video pressure
perf-network.mdHIGHRemote input, request stalls, and network resilience

Video, Accessibility, Setup, Testing

FileImpactDescription
video-streaming.mdHIGHTV platform protocol/DRM selection
video-players.mdHIGHPlayer choices and custom controls
video-debugging.mdHIGHManifest, DRM, codec, and playback debugging
a11y-overview.mdMEDIUMTV-specific accessibility differences
a11y-implementation.mdHIGHAccessible labels, roles, live regions, and focus
a11y-checklist.mdMEDIUMLaunch accessibility audit checklist
setup-getting-started.mdMEDIUMreact-native-tvos and Expo TV setup
setup-cross-platform.mdMEDIUMPlatform detection and cross-platform caveats
setup-architecture.mdMEDIUMCode sharing and project structure
test-strategy.mdMEDIUMTV testing scope and coverage split
test-javascript.mdMEDIUMJS-level remote/focus test helpers
test-e2e.mdMEDIUMAppium and TV E2E coverage
release-cicd.mdMEDIUMCI, build fingerprinting, and release checks

Problem → Skill Mapping

SymptomStart Here
"Focus jumps to wrong element"focus-management.md → Debugging section
"App freezes when scrolling lists"perf-lists.md → Virtualization
"Animations stutter on Fire TV"perf-animations.md → Native driver
"Text too small on TV"design-typography.md → Minimum sizes
"Video won't play / DRM errors"video-streaming.md → DRM section
"Screen reader skips elements"a11y-implementation.md → Roles & labels
"Back button doesn't work right"nav-patterns.md → Back navigation
"Keyboard covers content"nav-keyboard.md → Built-in vs custom
"App takes forever to start"perf-overview.md → Startup time
"Images causing memory crashes"perf-memory.md → Image optimization
"CI pipeline takes hours"release-cicd.md → Fingerprinting
"How to share code across platforms"setup-architecture.md → Code sharing

Security (TV-Specific)

General dependency/input hygiene applies as in any RN app; the TV-specific deltas worth calling out:

  • Never embed FairPlay/Widevine/PlayReady keys in client code — treat the license server as the trust boundary and keep DRM tokens server-issued.

FAQ

What does the react-native-tv-best-practices skill do?

Reviews React Native TV apps for focus/D-pad navigation, 10-foot UI layout, TV playback/DRM integration, low-memory TV performance, and TV accessibility. Use when building, debugging, or reviewing react-native-tvos, Expo TV, Amazon Vega/Kepler, or React Native web TV targets where the issue depends on remote input, TV focus, TV packaging, TV hardware, or TV playback constraints.

How do I install react-native-tv-best-practices?

Run npx skills add https://github.com/callstackincubator/agent-skills --skill react-native-tv-best-practices in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/react-native-tv-best-practices/ (personal) or .claude/skills/react-native-tv-best-practices/ (project).

Which AI agents can use react-native-tv-best-practices?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is react-native-tv-best-practices safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains react-native-tv-best-practices?

It is published by callstackincubator in callstackincubator/agent-skills. It has 2,282 recorded installs.

More from callstackincubator/agent-skills

View all →

react-native-best-practices

callstackincubator/agent-skills

Provides React Native performance optimization guidelines for FPS, TTI, bundle size, memory leaks, re-renders, and animations. Applies to tasks involving Hermes optimization, JS thread blocking, bridge overhead, FlashList, native modules, or debugging jank and frame drops.

OfficialCode Quality & Workflow30.3K installs

upgrading-react-native

callstackincubator/agent-skills

Upgrades React Native apps to newer versions by applying rn-diff-purge template diffs, updating package.json dependencies, migrating native iOS and Android configuration, resolving CocoaPods and Gradle changes, and handling breaking API updates. Use when upgrading React Native, bumping RN version, updating from RN 0.x to 0.y, or migrating Expo SDK alongside a React Native upgrade.

OfficialMobile12.8K installs

github-actions

callstackincubator/agent-skills

GitHub Actions workflow patterns for React Native iOS simulator and Android emulator cloud builds with downloadable artifacts. Use when setting up CI build pipelines or downloading GitHub Actions artifacts via gh CLI and GitHub API.

OfficialDevOps & Cloud11K installs

github

callstackincubator/agent-skills

GitHub patterns using gh CLI for pull requests, stacked PRs, code review, branching strategies, and repository automation. Use when working with GitHub PRs, merging strategies, or repository management tasks.

OfficialCode Quality & Workflow8.7K installs

validate-skills

callstackincubator/agent-skills

Validates skills in this repo against agentskills.io spec and Claude Code best practices. Use via /validate-skills command.

OfficialCode Quality & Workflow7.3K installs

react-native-brownfield-migration

callstackincubator/agent-skills

Implements an accepted incremental brownfield migration from native iOS or Android to React Native or Expo using @callstack/react-native-brownfield. Use after the brownfield path has been selected, when setting up the integration, packaging XCFramework or AAR artifacts, or adding React Native surfaces to native hosts.

OfficialMobile5.2K installs

Popular frontend & design skills

View category →

setup-matt-pocock-skills

mattpocock/skills

Configure this repo for the engineering skills: set up its issue tracker, triage label vocabulary, and domain doc layout. Run once before first use of the other engineering skills.

Frontend & Design1.1M installs

frontend-design

anthropics/skills

Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.

OfficialFrontend & Design1M installs

hyperframes-animation

heygen-com/hyperframes

All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.

prototype

mattpocock/skills

Build a throwaway prototype to answer a design question. Use when the user wants to sanity-check whether a state model or logic feels right, or explore what a UI should look like.

Frontend & Design999.2K installs

hyperframes-core

heygen-com/hyperframes

The HyperFrames composition contract — build one renderable project. Use for composition structure, the data- timing attributes, class="clip", tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Read before writing composition HTML.

Frontend & Design930.5K installs

vercel-react-best-practices

vercel-labs/agent-skills

React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.

OfficialFrontend & Design843.1K installs