My first iOS app is live on the App StorešŸŽ‰

SparkyTales lets parents & kids create animal characters and bedtime stories using Apple’s Foundation Models, fully on-device & offline.

Download: https://apps.apple.com/us/app/sparkytales-bedtime-stories/id6752358282

#SwiftUI #AppleIntelligence #FoundationModels

My goal was to create something fun I can use together with my kids every day with the most native approach inspired by the latest Apple technologies. Core technologies:
- Foundation Models framework
- ImageCreator API
- SwiftUI
- SwiftData
- CloudKit
- Liquid Glass
- StoreKit

As the on-device models keep improving, results will become even better with time. I’m very excited to see if the Apple’s partnership with Google will allow developers to use Gemini models as well, while still being able to use Swift’s powerful guided generation.

āŒ No vibe coding: carefully hand-crafted using Xcode.

Perhaps you want to give it a try and share your feedback. Want a promotion code to unlock all features? Send me a DM šŸŽŸļøšŸ˜Š

@jordywitteman cool, well done, but what’s your reasoning behind putting the close button on the trailing side? (I know, even Apple is inconsistent)
@nico42 thanks! Partially because it felt right to me and easily reachable to dismiss views for most people (assuming you’re right-handed). Checked a couple of Apple built-in apps and most seem to use top right corner in sheets these days, but yeah not always consistent. What’s your preference usually?
@jordywitteman I go with top left because that is where the Mac has the traffic light and a back button of a navigation stack is also there. Button(role: .close) in iOS26 takes that decision from you but there it is top right.
@jordywitteman Super fun! Love to see this sort of creativity for kids.
@jordywitteman super cool! I don’t have kids but I’m going to check this out anyways! The same idea has been rattling around in the back of my mind ever since Apple engineers used this exact idea in one of their labs for #wwdc24. Glad to see it come alive for real.