expo-module
Installation
Summary
Complete reference for building native modules and views with the Expo Modules API across Swift, Kotlin, and TypeScript.
- Covers module definition DSL (Function, AsyncFunction, Property, Constant, Events), native views, shared objects, and type system with examples in both Swift and Kotlin
- Includes lifecycle hooks for module initialization, iOS AppDelegate, and Android activity/application listeners
- Provides config plugin guidance for modifying Info.plist and AndroidManifest.xml, plus autolinking behavior and expo-module.config.json setup
- Recommends using
create-expo-modulescaffolding with deliberate platform and feature selection rather than manual file creation
SKILL.md
Writing Expo Modules
Complete reference for building native modules and views using the Expo Modules API. Covers Swift (iOS), Kotlin (Android), and TypeScript.
When to Use
- Creating a new Expo native module or native view
- Adding native functionality (camera, sensors, system APIs) to an Expo app
- Wrapping platform SDKs for React Native consumption
- Building config plugins that modify native project files
- Adding Android, Apple, or web support to an existing Expo module
- Editing
expo-module.config.json, config plugins, or lifecycle hooks
References
Consult these resources as needed: