Loading...
Loading...
This skill should be used when the user asks to "add SF Symbols", "animate icons", "use symbol effects", "apply symbol rendering mode", "add bounce/pulse effect", or needs SwiftUI iconography API reference. Provides SF Symbols usage, rendering modes (monochrome, hierarchical, multicolor, palette), symbol effects, and variable values.
npx skill4agent add kmshdev/claude-swift-toolkit swiftui-iconography-apiautonomous-ui-workflow| API | Purpose |
|---|---|
| System SF Symbol |
| Symbol with 0.0-1.0 value |
| Set rendering mode |
| Add variant (.fill, .circle) |
| Animate symbol |
| Palette colors (implies palette mode) |
| Mode | Usage |
|---|---|
| Single color: |
| Layered opacity: |
| Inherent colors: |
| Custom per-layer: |
// Indefinite (repeating)
Image(systemName: "bolt.slash.fill").symbolEffect(.pulse)
// Active/inactive
Image(systemName: "wifi").symbolEffect(.pulse, isActive: isConnecting)
// Value-driven
Image(systemName: "bell").symbolEffect(.bounce, value: count)
// As transition
.transition(.symbolEffect(.appear))Image(systemName: "chart.bar.fill", variableValue: 0.3) // partial
Image(systemName: "chart.bar.fill", variableValue: 1.0) // full| Need | Use |
|---|---|
| Standard system icon | |
| Icon with accessible label | |
| Icon matching adjacent text weight | |
| Animated symbol feedback | |
| Progress/level indicator | |
| Multi-color system icon | |
| Icon tinted to match theme | |
| Custom app icon | Asset catalog → Symbol Image Set → export from SF Symbols app |
Image(systemName:)Label.fontWeight().imageScale().resizable().frame().font().font(.title).symbolRenderingMode()Button(action: addFavorite) {
Image(systemName: "star.fill") // no label — VoiceOver reads nothing useful
}Button(action: addFavorite) {
Label("Add to Favorites", systemImage: "star.fill")
}Image(systemName: "heart.fill")
.resizable()
.frame(width: 24, height: 24) // disrupts text baseline alignmentImage(systemName: "heart.fill")
.font(.title2) // scales with Dynamic Type and aligns with textLabel("text", systemImage:)Image.font().imageScale().resizable().frame()@availableswiftui-colors-apiforegroundStyle()swiftui-ui-patternsmacos-app-design