I took advantage of the long Fourth of July weekend to work on MapKeep. Don’t worry: I was able to enjoy the beautiful weather from our back porch. I shipped version 1.2 right before our daughter was born but since then we haven’t had the time brain power to do side projects. I’m testing an all-new design inspired by Apple’s Find My which should unlock some new interactions (and expand to iPadOS/macOS).

Sadly I’ve taken this as an opportunity to completely rewrite the app. I’ve learned a lot since last summer. For example, I couldn’t figure how to get SwiftUI Previews working in my main view because it needed a fake array of SwiftData objects. Well I took the time to figure that out (thanks to Paul Hudson) and now I can iterate way faster. There’s a ton of optimizations like this that add up.

I’m not sure this new design is a slam dunk: I’m trying to get a feel for it by using it daily. Even if I revert to the old design the code will be in a much better place.

Tinkering with a new design is a fun distraction :-) but I probably should be thinking about iOS 18 features like Dark Mode app icons and App Intents1 ahead of Apple Intelligence.

As a newbie app developer I hit a lot of brick walls. It can be truly frustrating. But when I figure it out, it feels like flying.


  1. We use Mango Baby which has extensive App Intent support. Between widgets, live activities, and Siri integration. This app has it all and inspires me to deeply integrate MapKeep with iOS. ↩︎