ios-developer
Use when an org role acts as iOS developer and must build native apps in Swift and SwiftUI with @Observable state, strict concurrency, SwiftData and Keychain. Short role guidance on Apple conventions and accessibility; for deep Swift reference material use swift-expert.
- License 许可
- Apache-2.0
- 所属仓库
- monoes/monomind
- 最近更新
- 2026-11-14
- Stars
- ★ 23
- Forks
- 2
01 前言 Front Matter
- name
- ios-developer
- tags
- [ "frontend", "engineering", "swift", "mobile" ]
- tools
- [ "monograph_query", "monograph_context", "monograph_impact", "monodesign_detect", "monodesign_fix", "monodesign_palette" ]
- source
- https://github.com/monoes/monomind
- license
- Apache-2.0
- description
- Use when an org role acts as iOS developer and must build native apps in Swift and SwiftUI with @Observable state, strict concurrency, SwiftData and Keychain. Short role guidance on Apple conventions and accessibility; for deep Swift reference material use swift-expert.
03 SKILL.md 正文
iOS Developer — Best Practices
Focus
Builds native iOS applications with Swift and SwiftUI — modern, safe, performant apps that follow Apple's current platform conventions and data-safety guarantees.
Best practices
- Default to SwiftUI for new UI work; it now covers the vast majority of active devices (iOS 15+) and is no longer optional greenfield tech.
- Use
@Observable(iOS 17+) for state management in new code — don't mix it with the legacyObservableObject/@Publishedpattern in the same feature. - Embrace Swift's strict concurrency model: use actors to guard mutable state and resolve data-race warnings rather than suppressing them.
- Use SwiftData for new local persistence needs unless there's a specific reason to stay with Core Data (e.g., deep existing investment).
- Follow MVVM (or a comparably clear separation) so views stay declarative and business logic stays testable outside the view layer.
- Apply Apple's secure coding and data-handling guidance for anything touching user data — keychain for secrets, no sensitive data in plain UserDefaults or logs.
- Build accessibility in from the start: Dynamic Type, VoiceOver labels, and sufficient color contrast, verified with the Accessibility Inspector.
Common pitfalls
- Mixing old and new observation/state patterns within the same view hierarchy, causing confusing update behavior.
- Ignoring Swift 6 data-race warnings instead of fixing the underlying shared-state design.
- Storing sensitive data insecurely (plain UserDefaults, hardcoded secrets) instead of using Keychain.
- Treating accessibility as a final QA pass rather than validating it alongside each new screen.
Tools & techniques
- Xcode's strict concurrency checking and Instruments (Time Profiler, Allocations) for correctness and performance validation.
- SwiftData/Core Data migrations tested against real data before shipping schema changes.
- Accessibility Inspector and VoiceOver walkthroughs for every new screen.
- TestFlight staged rollouts combined with crash reporting (e.g., Xcode Organizer / Crashlytics) to catch regressions before full release.
04 同仓库更多 Skills
zk-steward
Org role guidance for a ZK steward: engineer zero-knowledge proof systems with circuit design, SNARK vs STARK choice and security review. This is zero-knowledge cryptography, not Zettelkasten note-taking.
writing-plans
Use when you have a spec or requirements for a multi-step coding task and must write an implementation plan before touching code. Produces bite-sized TDD tasks with exact file paths, code and commands for an engineer with zero context.
write-spec
Write a feature spec or PRD from a problem statement or feature idea. Use when turning a vague idea or user request into a structured document, scoping a feature with goals and non-goals, defining success metrics and acceptance criteria, or breaking a big ask into a phased spec.
write-query
Write optimized SQL for your dialect with best practices. Use when translating a natural-language data need into SQL, building a multi-CTE query with joins and aggregations, optimizing a query against a large partitioned table, or getting dialect-specific syntax for Snowflake, BigQuery, Postgres, etc.
workflow-automation
Org role guidance for workflow automation: build and maintain CI/CD definitions in GitHub Actions or equivalent: triggers, jobs, matrices, caching. Covers path filters, dependency caching, parallel jobs, timeouts and fail-fast ordering.
workflow-architect
Org role guidance for a workflow architect: map full workflow trees for systems, user journeys and agents, covering every branch and failure. Covers discovering workflows from code, handoff contracts, timeouts, recovery paths and observable state.