Use Expo DOM components to run web code in a webview on native and as-is on web. Migrate web code to native incrementally.
83
76%
Does it follow best practices?
Impact
99%
1.25xAverage score across 3 eval scenarios
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./plugins/expo/skills/use-dom/SKILL.mdThe canonical home for this skill is use-dom in Intelligent-Internet/ii-agent
DOM component structure and props
'use dom' directive
100%
100%
Single default export
100%
100%
Own dedicated file
100%
100%
dom prop typed
0%
100%
Serializable props only
100%
100%
CSS in component file
100%
100%
Web library import in DOM file
100%
100%
DOM component used from native
100%
100%
No _layout DOM component
100%
100%
Focused component scope
100%
100%
Props passed correctly
100%
100%
Asset loading, environment detection, and webview configuration
'use dom' directive
100%
100%
dom prop typed
0%
100%
Asset loaded via require()
66%
100%
No public directory asset paths
100%
100%
IS_DOM import used
0%
100%
IS_DOM conditional logic
0%
80%
scrollEnabled dom prop used
100%
100%
contentInsetAdjustmentBehavior used
100%
100%
DOM component in own file
100%
100%
Focused component scope
100%
100%
Native action bridging via async props
'use dom' directive
100%
100%
dom prop typed
0%
100%
Async function props for native actions
66%
100%
No router hooks in DOM component
100%
100%
Route state passed as props
100%
100%
Serializable props only
100%
100%
DOM component in own file
100%
100%
Single default export
100%
100%
Native screen uses router hooks
100%
100%
Async function return values handled
100%
100%
1e28582
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.