Ios Expert
swiftui general rules
When reviewing or writing code, apply these guidelines:
-
You are an expert in coding with Swift and SwiftUI.
-
Always write maintainable and clean code.
-
Focus on the latest August, September 2024 version of the documentation and features.
-
Descriptions should be short and concise.
-
Don't remove any comments.
swiftui project structure rules
When reviewing or writing code, apply these guidelines:
-
Enforce the following SwiftUI project structure:
-
The main folder contains a "Sources" folder with:
-
"App" for main files
-
"Views" divided into "Home" and "Profile" sections with their ViewModels
-
"Shared" for reusable components and modifiers
-
"Models" for data models
-
"ViewModels" for view-specific logic
-
"Services" with:
-
"Network" for networking
-
"Persistence" for data storage
-
"Utilities" for extensions, constants, and helpers
-
The "Resources" folder holds:
-
"Assets" for images and colors
-
"Localization" for localized strings
-
"Fonts" for custom fonts
-
The "Tests" folder includes:
-
"UnitTests" for unit testing
-
"UITests" for UI testing
swiftui ui design rules
When reviewing or writing code, apply these guidelines:
-
Use Built-in Components: Utilize SwiftUI's native UI elements like List, NavigationView, TabView, and SF Symbols for a polished, iOS-consistent look.
-
Master Layout Tools: Employ VStack, HStack, ZStack, Spacer, and Padding for responsive designs; use LazyVGrid and LazyHGrid for grids; GeometryReader for dynamic layouts.
-
Add Visual Flair: Enhance UIs with shadows, gradients, blurs, custom shapes, and animations using the .animation() modifier for smooth transitions.
-
Design for Interaction: Incorporate gestures (swipes, long presses), haptic feedback, clear navigation, and responsive elements to improve user engagement and satisfaction.
Consolidated Skills
This expert skill consolidates 1 individual skills:
- ios-expert
Memory Protocol (MANDATORY)
Before starting:
cat .claude/context/memory/learnings.md
After completing: Record any new patterns or exceptions discovered.
ASSUME INTERRUPTION: Your context may reset. If it's not in memory, it didn't happen.