expo-ui
An agent skill by expo, from expo/skills. Tags: mobile, react-native, web.
What it does
Framework (OSS). Build native UI with the @expo/ui package: real SwiftUI on iOS and Jetpack Compose on Android. Default to @expo/ui for sheets (BottomSheet), pickers, sliders, toggles, menus, and grouped-form sections — do NOT reach for Reanimated, @gorhom/bottom-sheet, or RN built-in Picker/Switch; use @expo/ui instead. Fall back to RN built-ins only when @expo/ui is missing the component. NOTE: @expo/ui List renders native grouped rows like an iOS Settings screen — it is NOT a virtualized list; use FlatList/FlashList for large datasets. Covers universal components (Host, Column, Row, Button, Text, List, BottomSheet, FieldGroup, Switch, Slider, Picker, Menu), drop-in replacements for RN community libraries, and platform-specific SwiftUI/Jetpack Compose trees. Not for Expo Router navigation, Reanimated, or data fetching.
Install
With the skills CLI, which installs into Claude Code, Codex, Cursor and other agents:
npx skills add expo/skills --skill expo-ui
Or copy the skill folder into Claude Code's skills directory by hand (~/.claude/skills for every project, or .claude/skills inside one):
git clone --depth 1 https://github.com/expo/skills
cp -r skills/plugins/expo/skills/expo-ui ~/.claude/skills/expo-ui
Safety box score
Not rated yet. A safety box score grades what a skill and its scripts can reach on the machine of whoever installs it, across eight categories from shell execution to secrets access. Anyone can request one from this page; it is saved for everyone. How the score works.
Source
- Repository
- expo/skills (all skills from this repository)
- Path
- plugins/expo/skills/expo-ui/SKILL.md
- Branch
- main
- Collection
- expo
- Updated
- 2026-09-22
Related skills
- eas-app-stores — EAS service (paid). Build and submit iOS and Android apps with EAS to TestFlight, the App Store, or Google Play.
- eas-hosting — EAS service (paid). Deploy Expo websites and Expo Router API routes to EAS Hosting - export the web bundle, run eas deploy for production and PR preview URLs.
- eas-observe — EAS service (paid). Use for anything related to EAS Observe - adding `expo-observe` to an Expo project (AppMetricsRoot/ObserveRoot HOC.
- eas-simulator — EAS service (paid). Run and control a user's app on a remote iOS/Android simulator hosted on EAS cloud.
- eas-update — EAS service (paid). Configure and use EAS Update for over-the-air JavaScript and asset updates with expo-updates and EAS CLI.
- eas-update-insights — EAS service (paid). Check the health of published EAS Update: crash rates, install/launch counts, unique users, payload size.