Skip to main content
skill CX Codex

swiftui — Claude Code skill: SwiftUI docs on demand

This skill keeps a copy of the SwiftUI documentation inside your project so the agent can grep it instead of browsing Apple's site. Handy while you wire up a screen and need a modifier's exact signature.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add Prisma-Labs-Dev/apple-skills --skill swiftui -a claude-code
Open on GitHub

What swiftui does

The skill runs in a forked context through the Explore agent. It ships a set of local .md files: the framework overview, the View protocol with its modifiers, separate pages for @State, @Binding and @Environment, the @Observable macro, plus NavigationStack, NavigationSplitView, TabView, List, Canvas and GraphicsContext.

Lookup is a grep over the downloaded pages. The agent searches this skill's files first, then the other Apple skills installed alongside it, and reaches for the web only when nothing local covers the topic. In that last case it takes a path from swiftui-overview.md and swaps it into the sosumi.ai mirror: swiftui/button becomes https://sosumi.ai/documentation/swiftui/button. Grep beats a network fetch on context budget.

One file, swiftui-overview.md, is a 907KB index of the whole framework. That makes it good for locating a page and bad for reading whole, so the skill is built around targeted searches. Some pages carry version limits: @Observable needs iOS 17+, NavigationStack and Canvas also start at specific iOS versions, so check the file header before you copy an example into an older target.

What it helps with

  • look up how a modifier such as font or padding is declared
  • pick between @State and @Binding for a piece of view data
  • set up routing with NavigationStack or NavigationSplitView
  • move a view model from ObservableObject to @Observable
  • draw a shape with Canvas and GraphicsContext

Example prompts for the agent

  • Grep the skill for how swipe actions on a List row are declared and show me the file
  • According to navigationstack.md, how do I bind a path to NavigationStack and pop back?
  • How do I declare an @Observable property that redraws the view?

How to install swiftui

1Skills CLI (Vercel)

npx skills add Prisma-Labs-Dev/apple-skills --skill swiftui -a claude-code

2Manually: put the files in place

~/.claude/skills/swiftui/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/swiftui/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about swiftui

How do I install swiftui in Claude Code?

Run npx skills add Prisma-Labs-Dev/apple-skills --skill swiftui -a claude-code. The skill file lands at ~/.claude/skills/swiftui/SKILL.md.

What does the swiftui skill do?

It hands the agent a local set of SwiftUI reference pages and tells it to search those before anything else. Less context spent on fetching Apple's docs mid-task.

Does it work offline?

The bundled files are local, so those need no connection. A network call happens only when neither this skill nor another installed Apple skill has the page the agent needs.

Source text

SKILL.md · MIT
---
name: swiftui
user-invocable: true
description: "API reference: SwiftUI. Query for views, layouts, navigation, @State/@Binding/@Observable, view modifiers, NavigationStack, iOS 26+ features."
context: fork
agent: Explore
---

# SwiftUI Reference

This skill provides access to SwiftUI documentation via downloaded reference files.

## Downloaded Reference Files

The following Apple documentation pages are available locally (grep-friendly):

| File | Content |
|------|---------|
| [swiftui-overview.md](swiftui-overview.md) | Full SwiftUI framework index (907KB) |
| [view-protocol.md](view-protocol.md) | View protocol and all modifiers (59KB) |
| [state.md](state.md) | @State property wrapper |
| [binding.md](binding.md) | @Binding property wrapper |
| [environment.md](environment.md) | @Environment property wrapper |
| [observation.md](observation.md) | @Observable macro (iOS 17+) |
| [navigationstack.md](navigationstack.md) | NavigationStack (iOS 16+) |
| [navigationsplitview.md](navigationsplitview.md) | NavigationSplitView |
| [tabview.md](tabview.md) | TabView |
| [list.md](list.md) | List view |
| [canvas.md](canvas.md) | Canvas — immediate-mode drawing (iOS 15+) |
| [graphicscontext.md](graphicscontext.md) | GraphicsContext — drawing API used inside Canvas |

## Fetching More Docs

1. Search this skill's local `.md` files first.
2. If the topic is not here, check the other installed Apple skills you have available by their names, descriptions, or `SKILL.md` frontmatter, then grep their local files. This is faster and uses less context than fetching new docs from the internet.
3. If no installed skill has the page, use the relevant documentation path from `swiftui-overview.md` with the `sosumi.ai` Markdown mirror. For example, `/documentation/swiftui/button` maps to `https://sosumi.ai/documentation/swiftui/button`.

### Common SwiftUI Doc Paths

| Topic | URL Path |
|-------|----------|
| Text | `swiftui/text` |
| Button | `swiftui/button` |
| Image | `swiftui/image` |
| VStack | `swiftui/vstack` |
| HStack | `swiftui/hstack` |
| ZStack | `swiftui/zstack` |
| Form | `swiftui/form` |
| Sheet | `swiftui/sheet` |
| Alert | `swiftui/alert` |
| Picker | `swiftui/picker` |
| Toggle | `swiftui/toggle` |
| Slider | `swiftui/slider` |
| ProgressView | `swiftui/progressview` |
| AsyncImage | `swiftui/asyncimage` |
| GeometryReader | `swiftui/geometryreader` |
| ScrollView | `swiftui/scrollview` |
| LazyVStack | `swiftui/lazyvstack` |
| LazyHStack | `swiftui/lazyhstack` |
| NavigationLink | `swiftui/navigationlink` |
| ToolbarItem | `swiftui/toolbaritem` |
| Canvas | `swiftui/canvas` |
| GraphicsContext | `swiftui/graphicscontext` |

## Usage Instructions

1. **Check downloaded files first** - Grep the local `.md` files for your topic
2. **Use the overview as an index** - Search `swiftui-overview.md` for documentation paths
3. **Fetch only when needed** - If no installed skill has the page, use `sosumi.ai` with documentation paths from the overview

Example workflow:
```bash
# Looking for info on modifiers?
grep -i "padding" view-protocol.md

# Need full Text documentation? Check the local file first.
grep -i "font" text.md
```

## Sources

- [SwiftUI | Apple Developer Documentation](https://developer.apple.com/documentation/swiftui)

© Prisma-Labs-Dev · MIT · Prisma-Labs-Dev/apple-skills

Similar skills

Everything for Mobile →

From the same set28

hig A local Markdown reference for Apple Human Interface Guidelines to check touch targets, Dynamic Type, system components, and App Review rules on demand. CX Codex +1 786installs healthkit A skill that hands your agent the HealthKit docs: store operations, sample queries, workouts, unit conversions. Useful when you write iOS code and don't want to keep opening Apple's docs. CX Codex +1 712installs ios-dev Entry point for iOS and SwiftUI tasks. Coordinates pattern guides, correctness checks, and Apple framework references for code reviews and feature development. CX Codex +1 697installs xcuitest A reference for building XCUITest UI tests in Swift 6. Use it to look up element queries, waits, assertions, or system-alert handling. CX Codex +1 679installs apple-docs-index Apple developer documentation index for iOS and macOS. Helps coding agents discover APIs across SwiftUI, UIKit, and SwiftData without blind web searches. CX Codex +1 673installs swift-concurrency A reference skill for Swift Concurrency: async/await, Task, TaskGroup, actors, AsyncSequence and continuation bridges. Useful when the agent writes async Swift code. CX Codex +1 643installs swift-testing A skill that hands your agent a local Swift Testing reference: @Test, @Suite, #expect, #require, parameterized tests, XCTest migration. CX Codex +1 636installs combine A skill that searches Combine documentation and answers questions about publishers, subscribers, operators and async data streams. CX Codex +1 618installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor