Inspiration

Is it just me, or does everyone have a camera roll full of trips they have almost forgotten ???

From my conversations, I found that many users have lots of photographs and videos in the photo albums lying there. Many of us love to take short videos or photos when we visit places -- some of which never make it back to our memory at all. And nobody has the time to scroll back, pick the good moments, learn a video editor and cut a film.

I wanted the film to be waiting for you when you open the app, so the trip comes back to life without any work.

What it does

Memories: Create Stories finds your trips on your iPhone and turns each one into a short vertical film.

  • Finds your trips. It groups your photos and videos by when and where they happened, so a local day out and an overseas holiday each become their own memory.
  • Makes a First Cut. Add a few words about the day, and Memories builds a film with music, titles and a story arc. There is no editor to learn.
  • AI Director (opt-in). Want another version? You choose the moments you are happy to share, and an AI director proposes a second cut. You compare it with your First Cut and keep the one that feels like you.
  • Save it, share it. Save to Photos, or create a 7-day share link so the people who were there can watch, even without the app.

Trying it is free. You can preview and edit the whole reel at no cost, and the free export is a 720p watermarked Memory Preview. We also give all users three full-length 1080p Free Exports per month. And for our more enthusiastic users, a one-time Story Pass unlocks the full-length 1080p story with no watermark.

How we built it

  • Native SwiftUI iOS app (iOS 17+). Finding trips and picking the best photos run on the iPhone, using PhotoKit and Apple's Vision framework. Text recognised in photos is not kept.
  • The film is rendered on the device. A custom AVFoundation renderer handles decoding, transitions, music and H.264 encoding, so a full export needs no cloud.
  • AI Director is explicit and opt-in. It goes through a small Cloudflare Worker that keeps the model key off the phone. The Worker sends reduced previews to an OpenAI image-capable model, stores nothing and logs nothing. Every request is verified with Apple App Attest, and the app names the provider and asks permission first.
  • Accounts and share links run on Supabase: Sign in with Apple, private Storage, short-lived signed links, hourly cleanup, and an account-deletion function that removes every video the user owns.
  • Monetisation runs on RevenueCat.
    • Every user gets three full-length 1080p Free Exports per month, so the product is generous by default. For enthusiastic users who want more, version 1 sells the Story Pass, a one-time consumable for each full-story export with no watermark, not a subscription. It fits how people really use the app: a handful of special trips a year.
    • The Story Pass sits in RevenueCat's current offering under a custom package identifier.
    • The offer appears at the moment of peak desire, when the First Cut finishes playing and the film itself carries the offer. Buying renders the full story immediately. Declining sends the free trailer instead.
    • A pending export resumes automatically after a successful purchase, and a failed or retried paid export never asks for a second purchase.

Challenges we ran into

  • Making long video exports reliable on a phone. Decoding, transitions, memory pressure and encoder stalls all matter. I added a progress watchdog that cancels a stalled render and offers a one-tap retry that does not downgrade an HD export or charge twice. A real-renderer test decodes a 90-second 1080p film frame by frame. Longer films with music still need more testing on real iPhones.

  • Privacy versus AI. I wanted an AI edit without uploading a photo library. The answer was to keep almost everything on the device, send only reduced previews of moments the user chose, make the cloud step opt-in, and fail closed if it is unavailable.

  • A paywall people do not resent. The free preview is a real, watchable film, and the paid version is the full story, so the offer never feels like a wall.

Accomplishments that we're proud of

  • A complete flow from photo access to a shareable film, with almost everything running on the device.
  • A privacy design that I can explain in one sentence: your photos stay on your iPhone unless you opt in to AI Director or create a share link.

What we learned

Monetisation works best when it follows the emotional moment. RevenueCat let me ship a localised, one-time purchase quickly, so I could spend my time on the film itself. I also learned how much of "AI" product quality is really about trust and handling failure well. I also learnt how to vibe code, or use agent engineering to deploy a fully working, tested iOS application, which was enlightening.

What's next for Memories: Create Stories

  • More on-device testing of long exports across different iPhones.
  • More soundtracks and visual styles.
  • A better share experience for family and friends, with a clear "make yours" step for anyone who opens a link.

Built With

Share this project:

Updates

Submission history