Agent Skills
› openai/plugins
› expo-ui-swift-ui
expo-ui-swift-ui
GitHub指导在 Expo SDK 55 中使用 @expo/ui/swift-ui 包,通过 SwiftUI API 构建原生视图。涵盖安装、组件导入、Host 包裹规则及 RN 组件嵌入方法。
Trigger Scenarios
使用 Expo UI SwiftUI 开发 iOS 界面
在 SwiftUI 中嵌入 React Native 组件
配置 Expo UI 组件和修饰符
Install
npx skills add openai/plugins --skill expo-ui-swift-ui -g -y
SKILL.md
Frontmatter
{
"name": "expo-ui-swift-ui",
"description": "`@expo\/ui\/swift-ui` package lets you use SwiftUI Views and modifiers in your app."
}
The instructions in this skill apply to SDK 55 only. For other SDK versions, refer to the Expo UI SwiftUI docs for that version for the most accurate information.
Installation
npx expo install @expo/ui
A native rebuild is required after installation (npx expo run:ios).
Instructions
- Expo UI's API mirrors SwiftUI's API. Use SwiftUI knowledge to decide which components or modifiers to use.
- Components are imported from
@expo/ui/swift-ui, modifiers from@expo/ui/swift-ui/modifiers. - When about to use a component, fetch its docs to confirm the API - https://docs.expo.dev/versions/v55.0.0/sdk/ui/swift-ui/{component-name}/index.md
- When unsure about a modifier's API, refer to the docs - https://docs.expo.dev/versions/v55.0.0/sdk/ui/swift-ui/modifiers/index.md
- Every SwiftUI tree must be wrapped in
Host. RNHostViewis specifically for embedding RN components inside a SwiftUI tree. Example:
import { Host, VStack, RNHostView } from "@expo-ui/swift-ui";
import { Pressable } from "react-native";
<Host matchContents>
<VStack>
<RNHostView matchContents>
// Here, `Pressable` is an RN component so it is wrapped in `RNHostView`.
<Pressable />
</RNHostView>
</VStack>
</Host>;
- If a required modifier or View is missing in Expo UI, it can be extended via a local Expo module. See: https://docs.expo.dev/guides/expo-ui-swift-ui/extending/index.md. Confirm with the user before extending.
Version History
- 11c74d6 Current 2026-07-19 09:34


