jordancoin/ios-skills-collection/arimunandar-code-review-checklist
Claude Code and agent skill by jordancoin/ios-skills-collection
Trust tier 3
- community
Source check pending
Checking that the SKILL.md file is still in the repository.
Comprehensive code review guidelines for iOS/Swift covering architecture, performance, security, and best practices
Install
npx vskill@latest install jordancoin/ios-skills-collection/arimunandar-code-review-checklistSKILL.md
Code Review Checklist
Comprehensive checklist for reviewing iOS/Swift code. Use this systematically to ensure thorough reviews.
Quick Review Checklist
Must Check (Every PR)
- [ ] Compiles - No build errors or warnings
- [ ] Tests pass - All existing tests green
- [ ] No crashes - No force unwraps in new code (
!) - [ ] Memory safe - Weak references where needed
- [ ] Thread safe - UI updates on main thread
Should Check
- [ ] Architecture - Follows VIP+W pattern
- [ ] Naming - Clear, descriptive names
- [ ] Tests - New code has tests
- [ ] Documentation - Complex logic explained
Detailed Review Categories
1. Architecture Compliance
VIP+W Pattern
Review Questions:
- [ ] Does ViewController only call
interactor?.methodName(request:)? - [ ] Does Interactor delegate async work to Worker?
- [ ] Does Presenter only format data, no business logic?
- [ ] Is navigation handled by Router only?
- [ ] Are all dependencies injected via Configurator?
Protocol Usage
Checklist:
- [ ] Dependencies injected, not created internally
- [ ] Protocols defined for all dependencies
- [ ] No singletons accessed directly (inject instead)
2. Memory Management
Retain Cycles
Checklist:
- [ ] Closures use
[weak self]or[unowned self] - [ ] Delegates are
weak - [ ] Timers are invalidated in
deinit - [ ] NotificationCenter observers removed
- [ ] No circular references between objects
Memory Leaks Detection
Review for:
- [ ] ViewControllers have
deinitlogging (development) - [ ] Closures stored as properties use weak capture
- [ ] Parent-child relationships use weak for child→parent
3. Concurrency & Thread Safety
Main Thread UI Updates
Checklist:
- [ ] UI updates on main thread/MainActor
- [ ] Heavy work on background thread
- [ ] No data races (use actors or locks)
- [ ] Proper async/await usage
Actor Isolation
4. Error Handling
Proper Error Propagation
Checklist:
- [ ] No empty catch blocks
- [ ] No
try!ortry?without justification - [ ] Errors propagated to user appropriately
- [ ] Network errors handled gracefully
- [ ] Offline state handled
Result Type Usage
5. Optionals & Safety
Force Unwrapping
Checklist:
- [ ] No
!force unwraps (except IBOutlets) - [ ] Guard statements for early returns
- [ ] Optional chaining used appropriately
- [ ] Nil coalescing for defaults
Implicitly Unwrapped Optionals
6. Naming Conventions
Swift Naming Guidelines
Checklist:
- [ ] Methods describe action (verbs):
fetchUser,updateProfile - [ ] Booleans read as questions:
isLoading,hasError,canSubmit - [ ] Constants in camelCase:
maximumCount, notMAX_COUNT - [ ] Types in PascalCase:
UserProfile - [ ] Protocols:
Protocolsuffix for abstractions,Delegatefor delegates
VIP+W Naming
| Component | Naming Pattern | |
|---|---|---|
| ViewController | LoginViewController | |
| Interactor | LoginInteractor | |
| Presenter | LoginPresenter | |
| Worker | LoginWorker | |
| Router | LoginRouter | |
| Models | Login.Request, Login.Response, Login.ViewModel | |
| Protocols | LoginDisplayLogic, LoginBusinessLogic |
7. Performance
Collection Operations
Checklist:
- [ ] Large collections use
lazyfor chained operations - [ ]
first(where:)instead offilter().first - [ ]
contains(where:)instead offilter().isEmpty == false - [ ] Avoid repeated array lookups in loops
Image Handling
Checklist:
- [ ] Images downscaled to display size
- [ ] Images loaded asynchronously
- [ ] Image caching implemented
- [ ] Large images not held in memory
8. Security
Sensitive Data
Checklist:
- [ ] No hardcoded API keys or secrets
- [ ] Sensitive data stored in Keychain
- [ ] No sensitive data in logs
- [ ] HTTPS for all network requests
- [ ] User input sanitized
Data Protection
9. Code Quality
SOLID Principles
| Principle | Check | |
|---|---|---|
| Single Responsibility | Does this class/function do ONE thing? | |
| Open/Closed | Can behavior be extended without modification? | |
| Liskov Substitution | Can subclasses replace base classes? | |
| Interface Segregation | Are protocols focused and minimal? | |
| Dependency Inversion | Are we depending on abstractions? |
Code Smells
- [ ] No methods > 30 lines
- [ ] No classes > 300 lines
- [ ] No more than 3 parameters per function
- [ ] No nested conditionals > 2 levels deep
- [ ] No duplicate code blocks
Magic Numbers
10. Testing
Test Coverage
- [ ] New public methods have tests
- [ ] Edge cases covered (empty, nil, error)
- [ ] Interactor logic tested
- [ ] Presenter formatting tested
- [ ] Worker async operations tested
Test Quality
Review Comment Templates
Request Changes
Suggested:
Suggestions
Questions
Approvals
Review Severity Levels
| Level | Icon | Meaning | Action | |
|---|---|---|---|---|
| Blocker | 🔴 | Must fix before merge | Requires changes | |
| Warning | 🟡 | Should fix, can discuss | Suggestion | |
| Info | 🔵 | FYI, question | Discussion | |
| Praise | 🟢 | Good work | Approval |
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/arimunandar--code-review-checklist/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/jordancoin/ios-skills-collection/arimunandar-code-review-checklist)