ios-architecture

Design iOS app architectures using MVVM, Clean Architecture, or TCA.

6|Updated Mar 16, 2026
One-click install
npx skills add https://github.com/koshkinvv/ios-agent-skills --skill ios-architecture-koshkinvv
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ios-architecture
Source: https://github.com/koshkinvv/ios-agent-skills/tree/main/skills/ios-architecture
Command: npx skills add https://github.com/koshkinvv/ios-agent-skills --skill ios-architecture-koshkinvv

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? iOS teams often struggle to choose and apply scalable architectures. This skill consolidates MVVM with @Observable, Clean Architecture, and The Composable Architecture (TCA) into a cohesive guide, enabling robust, maintainable codebases.

Core Features & Use Cases - MVVM with @Observable for reactive UI state and testable ViewModels - Clean Architecture with clear Domain/Data/Presentation layers and strict dependency rules - The Composable Architecture (TCA) patterns for complex state management - Modular architecture with SPM modules to improve build times and team autonomy - Repository pattern to abstract data access behind protocols - Coordinator/Router patterns for navigation without tight coupling - Dependency Injection via Factory or Environment for testability - Protocol-oriented programming to maximize swapability and testability

Quick Start Start by defining your app's architectural goals and decide between MVVM, Clean Architecture, or TCA, then scaffold modules accordingly.

Frequently Asked Questions about ios-architecture

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
What's the best way to structure a scalable iOS app architecture?

iOS app architecture can be structured using MVVM with @Observable, Clean Architecture, or The Composable Architecture (TCA). This skill guides feature module setup with clear Domain, Data, and Presentation layer boundaries for maintainable codebases.

How do I set up dependency injection and modular packages in Swift?

Set up Swift modular packages and dependency injection using Swift Package Manager (SPM) modules alongside Factory or Environment patterns. This skill guides scaffolding modular architectures to improve build times and ensure testability.

How do coordinators or routers handle navigation in complex iOS apps?

Coordinators and routers manage navigation by decoupling navigation flow from view controllers in complex iOS apps. This skill guides wiring coordinator patterns to handle navigation without tight coupling between feature modules.

Does this approach support The Composable Architecture for complex state management?

Yes, this skill provides dedicated guidance for The Composable Architecture (TCA) patterns to manage complex state. It consolidates TCA alongside MVVM with @Observable and Clean Architecture to structure scalable iOS apps.

When should I choose MVVM with @Observable over Clean Architecture for my iOS app?

Choose MVVM with @Observable for reactive UI state and testable ViewModels, or Clean Architecture for strict Domain, Data, and Presentation layer separation. This skill guides selection based on your app's complexity and layer boundaries.

What do I need to start designing feature modules for iOS?

Designing iOS feature modules requires a defined domain, data flow interfaces (protocols), dependency injection, and clear layer boundaries. This skill guides scaffolding SPM modules based on MVVM, Clean, or TCA patterns.