← ClaudeAtlas

expo-modulelisted

Guide for writing Expo native modules and views using the Expo Modules API (Swift, Kotlin, TypeScript). Covers module definition DSL, native views, shared objects, config plugins, lifecycle hooks, autolinking, and type system. Use when building or modifying native modules for Expo.
bertbertov/claude-stack · ★ 0 · AI & Automation · score 75
Install: claude install-skill bertbertov/claude-stack
# 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 ## References Consult these resources as needed: ``` references/ native-module.md Module definition DSL: Name, Function, AsyncFunction, Property, Constant, Events, type system, shared objects native-view.md Native view components: View, Prop, EventDispatcher, view lifecycle, ref-based functions lifecycle.md Lifecycle hooks: module, iOS app/AppDelegate, Android activity/application listeners config-plugin.md Config plugins: modifying Info.plist, AndroidManifest.xml, reading values in native code module-config.md expo-module.config.json fields and autolinking configuration ``` ## Quick Start ### Create a Local Module (in existing app) **Always scaffold with `create-expo-module` first**, then modify the generated code. This ensures correct podspec, build.gradle, and module config — avoiding common build errors. ```bash CI=1 npx create-expo-module@latest --local \ --name MyModule \ --description "My Expo module" \ --package expo.modules.mymodule ``` `CI=1` skips interactive prompts and use