swiftui-debug
SKILL.md
SwiftUI Debugging Guide
Debug common SwiftUI issues in the Leavn app:
Common Issues
1. View Not Updating
Check:
- Is ViewModel using
@Observablemacro? - Are properties marked
@MainActorif needed? - Is view observing the right object?
Fix:
// Ensure ViewModel is @Observable
@Observable
class MyViewModel {
var state: String = "" // Auto-tracked
}
// Ensure view observes it
@State var viewModel = MyViewModel() // Not @StateObject
2. Binding Not Working
Check:
- Is the binding two-way?
- Is the source value actually mutable?
- Is there a
@Bindingvs@Statemismatch?
Fix:
// Correct binding chain
@State var value: String
TextField("", text: $value) // $ creates Binding
3. Modal/Sheet Won't Dismiss
Check:
- Is
@Environment(\.dismiss)being called? - Is
isPresentedbinding being set to false? - Are there multiple presentation modifiers conflicting?
Fix:
@Environment(\.dismiss) var dismiss
Button("Close") {
isPresented = false // Update binding
dismiss() // Call environment dismiss
}
4. Performance Issues
Check:
- Are views too complex? (use
Self._printChanges()) - Unnecessary re-renders?
- Heavy computations in body?
Fix:
- Extract subviews
- Use
@Statesparingly - Move logic to ViewModel
Return specific fixes for the reported SwiftUI issue.
Weekly Installs
2
Repository
willsigmon/sigstackGitHub Stars
7
First Seen
Jan 25, 2026
Installed on
opencode2
codex2
claude-code2
antigravity2
gemini-cli2
windsurf1