turbo-modules

Wire TurboModules and JSI for native audio API integration.

822|83|Updated Jul 3, 2024
One-click install
npx skills add https://github.com/software-mansion/react-native-audio-api --skill turbo-modules
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: turbo-modules
Source: https://github.com/software-mansion/react-native-audio-api/tree/main/.claude/skills/turbo-modules
Command: npx skills add https://github.com/software-mansion/react-native-audio-api --skill turbo-modules

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Guides developers on when to use TurboModule versus HostObjects for native audio API integration and how to wire TurboModule bindings using injectJSIBindings across iOS and Android.

Core Features & Use Cases

  • Decide TurboModule vs HostObject usage for platform APIs (audio sessions, permissions, and native bootstrap) vs real-time audio graph operations.
  • Explain install() bootstrap flow and how to inject HostObjects into globalThis via AudioAPIModuleInstaller.
  • Clarify cross-architecture integration for iOS and Android (New Architecture with TurboModules, FABRIC bridging, and old Bridge paths).

Quick Start

Install TurboModule bindings and run injectJSIBindings to initialize the native Audio API bindings on all supported platforms.

Frequently Asked Questions about turbo-modules

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I wire JSI bindings for a React Native audio API?

To wire JSI bindings for a React Native audio API, you bootstrap TurboModules and use injectJSIBindings to initialize native Audio API bindings across iOS and Android architectures.

When should I use TurboModules versus HostObjects for React Native native module integration?

Use TurboModules for platform APIs like audio sessions and permissions, but use HostObjects for real-time audio graph operations to ensure safe native bindings within your React Native architecture.

How do I bootstrap a TurboModule and inject a HostObject into globalThis?

Bootstrap a TurboModule by running the install flow, then use AudioAPIModuleInstaller to inject your HostObjects directly into globalThis via injectJSIBindings for cross-architecture access.

Does TurboModule integration support both the new React Native architecture and the old Bridge?

Yes, TurboModule integration supports the New Architecture, FABRIC bridging, and old Bridge paths, ensuring cross-architecture compatibility for both iOS and Android native module bootstrapping.

Why is my React Native JSI native module integration failing on iOS and Android?

React Native JSI native module integration fails when the install order or runtime binding strategy is incorrect; diagnose issues by verifying your TurboModule bootstrapping and HostObject injection steps.

Do I need specific install steps to initialize native audio API bindings across platforms?

Yes, you must follow documented install order steps and run injectJSIBindings to properly initialize native Audio API bindings and ensure cross-architecture wiring on all supported platforms.