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.