expo-modules

Build Expo native modules for iOS and Android using Swift and Kotlin.

Updated Jan 30, 2025
One-click install
npx skills add https://github.com/manavkushwaha10/apple-health --skill expo-modules
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: expo-modules
Source: https://github.com/manavkushwaha10/apple-health/tree/main/.claude/skills/expo-modules
Command: npx skills add https://github.com/manavkushwaha10/apple-health --skill expo-modules

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Creating robust, cross-platform Expo native modules for iOS and Android that integrate seamlessly with the Expo ecosystem, while maintaining forward compatibility and clear API design.

Core Features & Use Cases

  • Design native APIs that feel like Web/W3C-style modules with strong typing and forward-compatibility.
  • Provide marshalling, shared objects, and comprehensive documentation to streamline cross-boundary data flow and long-term maintenance.
  • Verify and ship ready-to-use modules within React Native apps built with Expo, including testing and platform-specific considerations.

Quick Start

Create a new Expo module project, implement a simple native function in Swift for iOS and Kotlin for Android, and expose it to the Expo runtime.

Frequently Asked Questions about expo-modules

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

FAQPage Schema
How do I build Expo native modules for iOS and Android?▼

To build Expo native modules, implement native functionality using Swift for iOS and Kotlin for Android, then expose the APIs to the Expo runtime. This ensures seamless cross-platform integration within React Native applications.

What is marshalling in Expo modules and when do I need it?▼

Marshalling in Expo modules manages cross-boundary data flow between JavaScript and native environments. You need it when designing robust native APIs that require strong typing and forward-compatibility for complex data structures.

Can I use Swift and Kotlin to create cross-platform Expo modules?▼

Yes, you can use Swift and Kotlin to create cross-platform Expo modules. This approach conforms to the latest Expo module standards, enabling native implementations for both iOS and Android within a single module design.

What's the best way to design forward-compatible Expo native APIs?▼

The best way to design forward-compatible Expo native APIs is to adopt Web/W3C-style module patterns with strong typing. This approach streamlines long-term maintenance and ensures seamless integration within the Expo ecosystem.

How do I verify and test Expo native modules before shipping?▼

Verify and test Expo native modules by applying included validation and tooling guidance. This process checks platform-specific considerations and shared objects, ensuring modules are ready-to-use within React Native apps built with Expo.