SwiftUI state management best practices
Most SwiftUI state bugs are not wrapper bugs. They are ownership bugs: a value with two owners, a binding nobody needed, a store everything reads. The wrappers, the Observation framework and the environment, explained by who owns what.
How I Architect SwiftUI Apps for Swift Concurrency – So the Compiler Stays Quiet
Structuring a SwiftUI app has always been about the same goals for me: well-organized code, components that each do one job, and an app that stays maintainable as it grows. I want to find things quickly, change a feature without breaking something else, and use previews without depending on a server.
Diagnosing ForEach performance issues in SwiftUI lazy containers
SwiftUI's List and lazy stacks allow us to display large collections by creating view content as it approaches the visible region. However, the way we structure a ForEach inside these containers can cause SwiftUI to evaluate content earlier than expected, adding work for elements whose views are still offscreen.
SwiftUI .task vs .onAppear - Async Work Done Right
Most views need data that arrives asynchronously, such as a network response, a database query, or a file read. A common first approach is to start that work in onAppear(perform:). That works for synchronous setup, but it leaves the cleanup to you: you need to store the work, cancel it when the view goes away, and restart it when the input changes.
InnoFlow
SwiftUI-first unidirectional state management for business and domain transitions. Start with a reducer, a Store and deterministic tests; adopt orchestration only when your feature needs it.
