ios-development · git:20260621.3a3fb7e · 2026-06-21 · sha256 ae09ca3d1068a6b5

ios-development git:20260621.3a3fb7eA

Immutable. This exact content never changes and is served at /api/v1/blob/ae09ca3d1068a6b5.

---
name: ios-development
description: iOS development standards for AI agent implementation. Swift-first, SwiftUI,
  MVVM + Clean Architecture, async/await, comprehensive security, testing, and performance
  patterns. Use when building or reviewing iOS applications, generating Swift...
metadata:
  portable: true
  compatible_with:
  - Codex
  - codex
---

## Platform Notes

- Optional helper plugins may help in some environments, but they must not be treated as required for this skill.

# iOS Development Standards
Acknowledgement: Shared by Peter Bamuhigire, techguypeter.com, +256 784 464178.

<!-- dual-compat-start -->
## Use When

- iOS development standards for AI agent implementation. Swift-first, SwiftUI, MVVM + Clean Architecture, async/await, comprehensive security, testing, and performance patterns. Use when building or reviewing iOS applications, generating Swift...
- The task needs reusable judgment, domain constraints, or a proven workflow rather than ad hoc advice.

## Do Not Use When

- The task is unrelated to `ios-development` or would be better handled by a more specific companion skill.
- The request only needs a trivial answer and none of this skill's constraints or references materially help.

## Required Inputs

- Gather relevant project context, constraints, and the concrete problem to solve; load `references` only as needed.
- Confirm the desired deliverable: design, code, review, migration plan, audit, or documentation.

## Workflow

- Read this `SKILL.md` first, then load only the referenced deep-dive files that are necessary for the task.
- Apply the ordered guidance, checklists, and decision rules in this skill instead of cherry-picking isolated snippets.
- Produce the deliverable with assumptions, risks, and follow-up work made explicit when they matter.

## Quality Standards

- Keep outputs execution-oriented, concise, and aligned with the repository's baseline engineering standards.
- Preserve compatibility with existing project conventions unless the skill explicitly requires a stronger standard.
- Prefer deterministic, reviewable steps over vague advice or tool-specific magic.

## Anti-Patterns

- Treating examples as copy-paste truth without checking fit, constraints, or failure modes.
- Loading every reference file by default instead of using progressive disclosure.

## Outputs

- A concrete result that fits the task: implementation guidance, review findings, architecture decisions, templates, or generated artifacts.
- Clear assumptions, tradeoffs, or unresolved gaps when the task cannot be completed from available context alone.
- References used, companion skills, or follow-up actions when they materially improve execution.

## Evidence Produced

| Category | Artifact | Format | Example |
|----------|----------|--------|---------|
| Correctness | iOS feature test plan | Markdown doc covering unit, UI, and snapshot tests | `docs/ios/feature-tests-checkout.md` |
| UX quality | Accessibility audit | Markdown doc covering VoiceOver, Dynamic Type, and contrast | `docs/ios/a11y-checkout.md` |

## References

- Use the `references/` directory for deep detail after reading the core workflow below.
- `references/ios-project-setup.md` for Xcode project structure, SPM, schemes, build settings, and environment configuration.
- `references/ios-swift-recipes.md` for production Swift recipes, safe conversions, dates, Codable, hashing, and validation.
- `references/apple-platform-compatibility-wwdc26.md` for Xcode 27, Swift 6.4, iOS/iPadOS/macOS 27 SDK, Device Hub, coding agents, availability gates, and macOS/Safari watch items.
<!-- dual-compat-end -->
## Load Order

1. Load `world-class-engineering` for shared production gates.
2. Load `system-architecture-design` when the app participates in broader service or module architecture.
3. Load this skill for iOS implementation details.
4. Load `ios-ui-ux-design` for every user-facing iOS/iPadOS screen, especially premium, dashboard, onboarding, reporting, form, or revenue-critical flows.
5. Load `ios-security-and-rbac`, `ios-platform-capabilities`, or other focused parent skills as needed.

Production-grade Apple-platform development standards for AI-assisted implementation. Swift-first with SwiftUI, latest-SDK aware, and availability-gated for older deployment targets.

**Current Toolchain:** Xcode 27 on Apple Silicon | Swift 6.4 | latest iOS/iPadOS/macOS SDKs
**Core Stack:** Swift 6.4-ready | SwiftUI (default UI) | MVVM + Clean Architecture | Swift Concurrency
**Deployment Policy:** project-specific floor; iOS 17+ remains acceptable only when the app must support that fleet
**Compatibility:** Must run on both the declared minimum deployment target and the latest Apple OS, with availability gates for SDK-only features
**Reference App:** Apple's sample code gallery and WWDC sessions — canonical examples of modern SwiftUI patterns

## Backend Environments

iOS apps connect to a PHP/MySQL backend deployed across three environments:

| Environment | Base URL Pattern | Database | Notes |
|---|---|---|---|
| **Development** | `http://{LAN_IP}:{port}/DMS_web/api/` | MySQL 8.4.7 (Windows WAMP) | Use host machine LAN IP |
| **Staging** | `https://staging.{domain}/api/` | MySQL 8.x (Ubuntu VPS) | For QA and TestFlight |
| **Production** | `https://{domain}/api/` | MySQL 8.x (Debian VPS) | App Store release |

Configure base URLs using Xcode build configurations and `.xcconfig` files so each scheme targets the correct backend. All backends use `utf8mb4_unicode_ci` collation and MySQL 8.x.

## Additional Guidance

Extended guidance for `ios-development` was moved to [references/skill-deep-dive.md](references/skill-deep-dive.md) to keep this entrypoint compact and fast to load.

Use that deep dive for:
- `Swift Language Standards`
- `Architecture: MVVM + Clean Architecture`
- `Project Structure`
- `State Management (iOS 17+ — No Legacy Patterns)`
- `Networking Layer`
- `Build Configuration (3 Environments)`
- `WWDC26 Apple Platform Compatibility`
- `Security Standards`
- `Testing Strategy`
- `Performance Rules`
- `Release Gate`
- `Navigation (iOS 17+)`
- `Minimum Requirements`
- Additional deep-dive sections continue in the reference file.

For screen quality, visual polish, native interaction, Dynamic Type, VoiceOver, iPad adaptation, and premium UX gates, load `ios-ui-ux-design` alongside this implementation skill.