swift-ui-architect
swift-ui-architect equips AI agents with the expertise to design and implement robust SwiftUI applications using proven architectural patterns. The skill enforces separation of concerns through MVVM-C layering, Swift Package Manager organization, and coordinator-based navigation, enabling agents to generate production-ready iOS codebases that scale with team complexity.
swift-ui-architect teaches MVVM-C architecture with clear separation between Domain, Data, and Feature layers. It emphasizes using Swift Package Manager for modular organization, implementing Observable ViewModels for state management, and coordinator-based navigation patterns. The skill guides agents to enforce these boundaries consistently across projects, ensuring scalable and maintainable SwiftUI applications.
AI-generated summary based on this skill's SKILL.md
Install
pproenca/dot-skills/swift-ui-architect · repository language: Shell
git clone https://github.com/pproenca/dot-skills
cp -r dot-skills/skills/.experimental/swift-ui-architect ~/.claude/skills/swift-ui-architectFrequently asked questions
AI-generated answers based on this skill's SKILL.md and metadata
What swiftui architecture best practices does swift-ui-architect teach?
swift-ui-architect teaches MVVM-C architecture with clear separation between Domain, Data, and Feature layers. It emphasizes using Swift Package Manager for modular organization, implementing Observable ViewModels for state management, and coordinator-based navigation patterns. The skill guides agents to enforce these boundaries consistently across projects, ensuring scalable and maintainable SwiftUI applications.
How do you set up dependency injection in swift-ui-architect?
swift-ui-architect provides patterns for building a DependencyContainer that manages all injectable dependencies across your SwiftUI app. The container registers services at the Domain and Data layers, then injects them into Feature modules via coordinator initialization. This approach decouples components, simplifies testing, and keeps dependency graphs explicit and traceable.
What is the mvvm-c coordinator pattern in swift-ui-architect?
swift-ui-architect's MVVM-C pattern pairs ViewModels with Coordinators to handle navigation and flow logic separately from UI rendering. Coordinators manage route shells and transitions between features, while ViewModels handle state and business logic. This separation makes navigation testable and keeps SwiftUI views focused on presentation only.
How should you organize swiftui projects with SPM packages?
swift-ui-architect recommends structuring projects as SPM packages divided into Domain (entities and protocols), Data (repositories and networking), and Feature (UI and coordinators) layers. Each layer becomes its own package with explicit dependencies, preventing circular imports and enabling independent testing. This modular approach scales as team complexity grows.
What role do Observable ViewModels play in swift-ui-architect?
swift-ui-architect uses Observable ViewModels (Swift 6 style) to drive reactive UI updates without @Published boilerplate. ViewModels expose state as @Observable properties, triggering SwiftUI re-renders automatically. Combined with coordinators for navigation, this pattern keeps state management clean and navigation logic decoupled from view rendering.
How does swift-ui-architect handle swiftui navigation and routing?
swift-ui-architect implements navigation through route shells managed by Coordinators. Each feature defines its own routes and transitions; coordinators interpret those routes and push new screens or present modals. This centralizes navigation logic, making it testable and reusable across the app without scattering NavigationStack or sheet modifiers throughout views.
SKILL.md
rendered from the published skill — quoted content, verbatim
SwiftUI Modular MVVM-C Architecture
Opinionated architecture enforcement for SwiftUI clinic-style apps. This skill aligns to the iOS 26 / Swift 6.2 clinic architecture: modular MVVM-C in local SPM packages, concrete coordinators and route shells in the App target, pure Domain protocols, and Data as the only I/O layer.
Mandated Architecture Stack
``` ┌───────────────────────────────────────────────────────────────┐ │ App target: DependencyContainer, Coordinators, Route Shells │ ├───────────────┬───────────────┬───────────────┬──────────────┤ │ Feature SPM │ Feature SPM │ Feature SPM │ Feature SPM │ │ View + VM │ View + VM │ View + VM │
(truncated - see the full file via the links below)
Read as markdown · JSON record · Browse the source repository
File tree — 15 files
skills/.experimental/swift-ui-architect/SKILL.md
skills/.experimental/swift-ui-architect/assets/templates/_template.md
skills/.experimental/swift-ui-architect/metadata.json
skills/.experimental/swift-ui-architect/references/_sections.md
skills/.experimental/swift-ui-architect/references/data-async-init.md
skills/.experimental/swift-ui-architect/references/data-cancellation.md
skills/.experimental/swift-ui-architect/references/data-combine-avoid.md
skills/.experimental/swift-ui-architect/references/data-error-loadable.md
skills/.experimental/swift-ui-architect/references/data-task-modifier.md
skills/.experimental/swift-ui-architect/references/di-container-composition.md
skills/.experimental/swift-ui-architect/references/di-environment-injection.md
skills/.experimental/swift-ui-architect/references/di-mock-testing.md
skills/.experimental/swift-ui-architect/references/di-protocol-abstraction.md
skills/.experimental/swift-ui-architect/references/diff-avoid-anyview.md
skills/.experimental/swift-ui-architect/references/diff-closure-skip.md