What problem does it solve? React Native apps cannot directly use web-only libraries like recharts or react-syntax-highlighter, forcing costly rewrites when migrating web code to native. This Skill guides you through using Expo DOM components to run web code verbatim in a webview on iOS and Android while rendering as-is on web. ## Core Features & Use Cases - DOM Component Creation: Build components with the 'use dom' directive, configure the dom prop for scrolling, safe areas, and sizing, and follow the rules for serializable props and single default exports. - Native-Webview Bridge: Expose native actions like alerts and storage to the webview via async function props, and pass router state (params, pathname) from native parents since hooks like useLocalSearchParams don't work inside DOM components. - Web Library Integration: Use any React web library (charts, syntax highlighters, rich text editors) inside your Expo app without modification. - Use Case: You have an existing React web dashboard built with recharts. Instead of rewriting it with a native charting library, wrap it in a DOM component and embed it directly in your Expo app's native screens. ## Quick Start Use the expo-dom skill to convert my recharts-based web chart component into an Expo DOM component that runs inside my native app.