{"enrichment":{"faq":[{"a":"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.","q":"What swiftui architecture best practices does swift-ui-architect teach?"},{"a":"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.","q":"How do you set up dependency injection in swift-ui-architect?"},{"a":"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.","q":"What is the mvvm-c coordinator pattern in swift-ui-architect?"},{"a":"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.","q":"How should you organize swiftui projects with SPM packages?"},{"a":"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.","q":"What role do Observable ViewModels play in swift-ui-architect?"},{"a":"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.","q":"How does swift-ui-architect handle swiftui navigation and routing?"}],"shadow_tags":["modular-architecture","dependency-injection","coordinator-pattern","observable-state","spm-packages","layer-separation","navigation-routing","data-persistence","async-patterns","code-organization"],"summary_rewrite":"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."},"files":[{"bytes":10924,"path":"skills/.experimental/swift-ui-architect/SKILL.md","sha256":"602d57880d116d7d2a0a3fc1076b3c93a340f565de74d52ac65ea180eaf286ad","url":"https://skillfed.io/files/pproenca/dot-skills/swift-ui-architect/546b5d5e/SKILL.md"}],"id":"pproenca/dot-skills/swift-ui-architect","links":{"html":"https://skillfed.io/pproenca/dot-skills/swift-ui-architect","md":"https://skillfed.io/pproenca/dot-skills/swift-ui-architect.md","repo":"https://github.com/pproenca/dot-skills"},"meta":{"agents_supported":[],"first_seen":"2026-07-28","forks":14,"language":"Shell","last_updated":"2026-07-24","license":"MIT","name":"swift-ui-architect","publisher":"pproenca","stars":182},"relations":{"similar":[{"id":"pproenca/dot-skills/swift-refactor"},{"id":"pproenca/dot-skills/ios-navigation"},{"id":"pproenca/dot-skills/ios-design-system"},{"id":"pproenca/dot-skills/swift-optimise"},{"id":"pproenca/dot-skills/swift-data"},{"id":"pproenca/dot-skills/ios-hig"},{"id":"pproenca/dot-skills/ios-xcode"},{"id":"pproenca/dot-skills/ios-testing"},{"id":"pproenca/dot-skills/ios-animations"},{"id":"pproenca/dot-skills/ios-storyboard"}]},"slug":{"owner":"pproenca","repo":"dot-skills","skill":"swift-ui-architect"},"version":"546b5d5e"}
