Agent Skills: Apple Swift/SwiftUI Performance Optimization Best Practices

Swift 6.2 and SwiftUI performance optimization for iOS 26 clinic architecture codebases. Covers async/await concurrency patterns, Sendable/actor isolation, view/render performance, and animation performance while preserving modular MVVM-C boundaries across App, Feature, Domain, and Data layers. Use when profiling or optimizing Swift/SwiftUI behavior in clinic modules.

UncategorizedID: pproenca/dot-skills/swift-optimise

Install this agent skill to your local

pnpm dlx add-skill https://github.com/pproenca/dot-skills/tree/HEAD/skills/.experimental/swift-optimise

Skill Files

Browse the full folder contents for swift-optimise.

Download Skill

Loading file tree…

skills/.experimental/swift-optimise/SKILL.md

Skill Metadata

Name
swift-optimise
Description
Swift 6.2 and SwiftUI performance optimization for iOS 26 clinic architecture codebases. Covers async/await concurrency patterns, Sendable/actor isolation, view/render performance, and animation performance while preserving modular MVVM-C boundaries across App, Feature, Domain, and Data layers. Use when profiling or optimizing Swift/SwiftUI behavior in clinic modules.

Apple Swift/SwiftUI Performance Optimization Best Practices

Comprehensive guide for Swift and SwiftUI performance optimization. Contains 19 rules across 3 categories covering modern concurrency, render performance, and animation performance. Targets iOS 26 / Swift 6.2 with @Observable and Swift 6 strict concurrency.

Clinic Architecture Contract (iOS 26 / Swift 6.2)

All guidance in this skill assumes the clinic modular MVVM-C architecture:

  • Feature modules import Domain + DesignSystem only (never Data, never sibling features)
  • App target is the convergence point and owns DependencyContainer, concrete coordinators, and Route Shell wiring
  • Domain stays pure Swift and defines models plus repository, *Coordinating, ErrorRouting, and AppError contracts
  • Data owns SwiftData/network/sync/retry/background I/O and implements Domain protocols
  • Read/write flow defaults to stale-while-revalidate reads and optimistic queued writes
  • ViewModels call repository protocols directly (no default use-case/interactor layer)

When to Apply

Reference these guidelines when:

  • Migrating to Swift 6 strict concurrency (Sendable, actor isolation)
  • Replacing Combine publishers with async/await
  • Implementing @MainActor isolation and actor-based concurrency
  • Decomposing views to reduce state invalidation blast radius
  • Optimizing scroll and render performance with lazy containers
  • Using Canvas/TimelineView for high-performance rendering
  • Profiling with SwiftUI Instruments before optimizing
  • Building performant spring animations and transitions

Rule Categories by Priority

| Priority | Category | Impact | Prefix | |----------|----------|--------|--------| | 1 | Concurrency & Async | CRITICAL | conc- | | 2 | Render & Scroll Performance | HIGH | perf- | | 3 | Animation Performance | MEDIUM | anim- |

Quick Reference

1. Concurrency & Async (CRITICAL)

2. Render & Scroll Performance (HIGH)

3. Animation Performance (MEDIUM)

How to Use

Read individual reference files for detailed explanations and code examples:

Reference Files

| File | Description | |------|-------------| | references/_sections.md | Category definitions and ordering | | assets/templates/_template.md | Template for new rules |