use-dom

Run web React components inside native Expo apps via webview.

Updated Apr 5, 2026
One-click install
npx skills add https://github.com/sc30gsw/jikan-log --skill use-dom-sc30gsw
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: use-dom
Source: https://github.com/sc30gsw/jikan-log/tree/main/.agents/skills/use-dom
Command: npx skills add https://github.com/sc30gsw/jikan-log --skill use-dom-sc30gsw

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Running web code in native apps can be challenging due to platform differences; Expo DOM components bridge this gap by executing web content inside a webview on native while preserving behavior on web, enabling incremental migration.

Core Features & Use Cases

  • Run web libraries and HTML/CSS in native apps via a webview without rewriting code
  • Gradually migrate large web codebases to native by isolating web-specific components
  • Embed complex web UI in Expo apps and maintain parity across platforms

Quick Start

Create a simple DOM component with the 'use dom' directive at the top and render it in a screen to begin integrating web content.

Frequently Asked Questions about use-dom

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run web code inside an Expo native app?▼

You can run web code inside an Expo native app by wrapping web-oriented React components in a webview using the 'use dom' directive, preserving web behavior across both mobile and web platforms.

Can I gradually migrate a large web codebase to React Native?▼

Yes, you can gradually migrate large web codebases to native by isolating web-specific components within DOM components, allowing incremental migration without rewriting entire applications at once.

Does Expo DOM components support embedding complex HTML and CSS content?▼

Expo DOM components support embedding complex HTML and CSS content by executing web content inside a webview on native, maintaining visual and functional parity across platforms without code rewrites.

What is the best way to use web libraries in a React Native project?▼

The best way to use web libraries in React Native is wrapping them in a DOM component by adding the 'use dom' directive at the top, exporting a single default component, and using expo/dom props for interactions.

How do you pass interactions between native screens and DOM components?▼

You pass interactions between native screens and DOM components by using the expo/dom props, enabling seamless communication between the native environment and the web content rendered inside the webview.

What are the limitations of using webviews to render web content in Expo?▼

Using webviews to render web content in Expo requires placing the 'use dom' directive at the top of components and exporting a single default component, which may constrain complex native interop and state management.