expo-module

Build Expo native modules and views with the Expo Modules API.

34|2|Updated Aug 16, 2025
One-click install
npx skills add https://github.com/FilenCloudDienste/filen-ts --skill expo-module-filenclouddienste
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: expo-module
Source: https://github.com/FilenCloudDienste/filen-ts/tree/main/.claude/skills/expo-module
Command: npx skills add https://github.com/FilenCloudDienste/filen-ts --skill expo-module-filenclouddienste

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill helps you create and maintain Expo native modules and native views so your Expo app can access platform-specific capabilities reliably and with a clean JavaScript API.

Core Features & Use Cases

  • Expo Modules API DSL: Define modules with Functions, AsyncFunctions, Properties, Constants, Events, and Shared Objects across iOS (Swift) and Android (Kotlin).
  • Native Views for React rendering: Implement UI components using Expo View definitions, props, event dispatching, and view lifecycle hooks.
  • Config plugins and lifecycle hooks: Modify native project files during prebuild and manage module/app lifecycle events without manual project edits.
  • Autolinking-ready configuration: Understand and apply expo-module.config.json structure so Expo can discover modules automatically.

Quick Start

Scaffold a new module using create-expo-module, then update the generated module definition and bindings to match your real native functionality and view/feature needs.

Frequently Asked Questions about expo-module

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, define modules using the Expo Modules API DSL with Swift for iOS and Kotlin for Android, then expose them to JavaScript via TypeScript bindings. The scaffold-to-edit workflow ensures deterministic native integration.

How does the Expo Modules API handle native UI components?

The Expo Modules API handles native views by implementing UI components through Expo View definitions. You configure props, event dispatching, and view lifecycle hooks to render native UI components directly within React.

What is the best way to configure autolinking for Expo modules?

The best way to configure autolinking is by defining the expo-module.config.json structure correctly. This configuration file allows Expo to automatically discover and integrate your native modules during the prebuild phase.

Can I modify native project files during prebuild without manual edits?

Yes, you can modify native project files during prebuild without manual edits by using config plugins. Config plugins leverage lifecycle hooks to deterministically alter native project configurations for iOS and Android.

Do I need to write separate module definitions for Swift and Kotlin?

Yes, implementing platform SDK wrappers requires writing separate definitions for Swift and Kotlin. You use the module and view DSL constructs in each language, then bridge them together using TypeScript bindings for JavaScript access.