Just shipped my first iOS app — a baby animal sounds app for my toddler. Here's what I learned.
After a few hours of coding, TapAnimals is about to go live on the App Store.
The concept is embarrassingly simple: tap an animal card, hear the sound and name. But the journey to ship taught me a ton.
Technical decisions worth sharing:
Audio: I went with AVAudioPlayer with all sounds bundled in the app rather than streaming. Adds ~8MB to the bundle but means zero latency and zero network dependency — critical when a 1-year-old is waiting for the elephant sound.
SwiftUI animations: Used scaleEffect + spring() for the tap feedback. Toddlers love the bounce. This single interaction detail got the best reaction during testing (my kid).
No backend: The app makes zero network requests. No analytics SDK, no crash reporter, no feature flags. Surprisingly liberating. The privacy policy is one paragraph.
App Store review: Taking about 24 hours. The iPad screenshot requirement caught me — you need 2064×2752 for 13" iPad even if your app is iPhone-first.
Biggest lesson: Shipping beats perfecting. Version 1 doesn't have half the features I planned. But it's in the store and real kids are tapping elephants.
App Store: [link when live]
Repo/stack: SwiftUI, AVFoundation, no third-party dependencies.
What would you add to v2?