use-dom

Run web code in a native webview using Expo DOM components.

3|Updated Jan 7, 2026
One-click install
npx skills add https://github.com/jonluca/palate --skill use-dom-jonluca
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: use-dom
Source: https://github.com/jonluca/palate/tree/main/.agents/skills/use-dom
Command: npx skills add https://github.com/jonluca/palate --skill use-dom-jonluca

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve?

This Skill allows you to use web-only libraries and code in a native webview on Expo apps, enabling the migration of web code to native platforms incrementally.

Core Features & Use Cases

  • Web Code in Native Apps: Run web code in a webview on native platforms while rendering as-is on web.
  • Incremental Migration: Migrate existing React web components to native without rewriting.
  • Use Case: Use this Skill to include libraries like recharts or react-syntax-highlighter in your Expo app without modification.

Quick Start

To use a DOM component, create a new file with the 'use dom;' directive at the top and import the necessary libraries.

Frequently Asked Questions about use-dom

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

FAQPage Schema
How do I use web libraries in React Native without rewriting the code?

You can run web code in a native webview using Expo DOM components. This allows you to include web-only libraries in your React Native app without modifying the original web code.

Can I use recharts or react-syntax-highlighter directly in an Expo app?

Yes, you can use web libraries like recharts or react-syntax-highlighter in an Expo app. By using the 'use dom;' directive, the code runs inside a native webview.

What is the best way to incrementally migrate React web components to native?

Incrementally migrate React web components to native by rendering them in a native webview. This approach lets you port your existing web codebase to native platforms without a full rewrite.

How do Expo DOM components handle rendering on web versus native platforms?

Expo DOM components execute web code within a native webview on native platforms, while rendering the code as-is on the web. This ensures seamless integration across both environments.

How do I create a DOM component in my React Native project?

To create a DOM component, make a new file and add the 'use dom;' directive at the top. You can then import and use the necessary web libraries within that file.