Build iOS Apps with SwiftUI is a development claude skill built by Expo. Best for: React Native developers building iOS apps who want to leverage native SwiftUI components for UI performance.

What it does
Use SwiftUI Views and modifiers in Expo apps via @expo/ui/swift-ui package
Category
development
Created by
Expo
Last updated
Claude Skilldevelopment GitHub-backed Curated OfficialintermediateClaude Code

Build iOS Apps with SwiftUI

Use SwiftUI Views and modifiers in Expo apps via @expo/ui/swift-ui package

Skill instructions


name: Expo UI SwiftUI 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.
  • RNHostView is 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.

Use this skill

Most skills are portable instruction packages. Claude Code supports SKILL.md directly. Other agents can use adapted files like AGENTS.md, .cursorrules, and GEMINI.md.

Claude Code

Save SKILL.md into your Claude Skills folder, then restart Claude Code.

mkdir -p ~/.claude/skills/build-ios-apps-with-swiftui && curl -L "https://raw.githubusercontent.com/expo/skills/HEAD/plugins/expo/skills/expo-ui-swift-ui/SKILL.md" -o ~/.claude/skills/build-ios-apps-with-swiftui/SKILL.md

Installs to ~/.claude/skills/build-ios-apps-with-swiftui/SKILL.md.

Use cases

React Native developers building iOS apps who want to leverage native SwiftUI components for UI performance

Reviews

No reviews yet. Be the first to review this skill.

No signup required

Stats

Installs0
GitHub Stars1.7k
Forks77
LicenseMIT
UpdatedMar 27, 2026

Creator

E

Expo

@expo