-
Next fuda: the route drawn large, the countdown larger. One glance, one action.
-
Route art on every pass: the actual railway line, the actual great-circle route.
-
Lock screen and Dynamic Island: it's already there when you need it.
-
Rail, flights, stays, dining, rental cars, buses and ferries. One list.
-
Share a trip; the message carries an Add-to-Wallet link.
-
Mail is parsed on device. The body never leaves it.
-
No ads. No tracking. Nothing collected.
-
App icon, 1024x1024 uncropped.
Inspiration
Reservation details live in email: trains and flights, hotels, dinner with friends, venues for events. Right before you leave—or when someone asks “where and when?”—you’re searching for the time, place, and confirmation number. We wanted the next reservation on the surfaces people already glance at, and a simple way to share the plan with a group.
What it does
Aifuda reads booking mail on device, turns it into structured reservations, and surfaces the next one on the lock screen, Dynamic Island, widgets, and Apple Wallet when it matters. Rail, flights, stays, dining, rental cars, buses and ferries—eight kinds in one list. Open the app and the next trip fills a single hero card: the countdown drawn largest, your seat right under it, and the same route artwork the Wallet pass carries—real coastlines, real railway lines.
There is also a “Me” tab: make a card of yourself—name, SNS links shown with service marks, a photo on the face—and keep it in Wallet as its own stack, ready to hand over like a business card.
Free covers sync, template parsing, Next fuda, manual Wallet adds, sharing, and your first profile card. Pro unlocks automation (Live Activities, Wallet auto-add), Apple Intelligence reading for mail that doesn’t match a template, ticket-screenshot import, and additional profile cards with custom styling.
How we built it
- iOS: SwiftUI, SwiftData, WidgetKit, ActivityKit, PassKit
- Parsing & mail: Swift packages for template parsers, MIME decode, Gmail / Microsoft Graph with OAuth on device
- On-device extraction: Apple Intelligence (Foundation Models framework) for non-template mail and screenshots—nothing leaves the device
- Wallet: The device builds
pass.jsonand a blind-signing server returns only a CMS signature—no mail body leaves the phone for signing - Backend: Cloudflare Workers for pass signing and Live Activity push-to-start scheduling
- Monetization: RevenueCat + StoreKit 2 subscription (
proentitlement)
Challenges we ran into
- Wallet signing without putting pass certificates or mail content on the server
- Live Activity limits (payload size, duration, push-to-start vs update tokens) while keeping identifiers keyed, not raw reservation IDs
- Template parsers that stay deterministic, plus an opt-in on-device model path for everything else—with a clear “needs review” state
- Gating automation behind Pro without making basic “see my next booking” feel locked
Accomplishments that we're proud of
- A real output layer: Next Up → Wallet / Live Activity / widgets, not just another trip list
- Blind signing so Wallet works without shipping secrets or mail to the cloud
- Route artwork generated from public-domain geography—every rail and flight pass gets a map drawn on device
- Sharing that helps groups coordinate dinners and events without a contacts/social graph
- A Free/Pro split that monetizes automation, not reading your mail
What we learned
The hard product problem isn’t listing every booking—it’s putting one reservation on the right surface at the right time. Privacy constraints (on-device parse, limited server surface) forced cleaner architecture. Subscriptions fit better than ads when mail data is involved.
What's next for Aifuda
- Broader parser coverage and stronger on-device extraction for non-template mail
- Gmail connect once Google’s OAuth verification completes (Outlook ships first)
- Venue context on passes and share links via a custom domain
- App Store launch with RevenueCat, then iterate on what people actually open at the gate, the lobby, or the restaurant door
Built With
- activitykit
- app-attest
- apple-intelligence
- cloudflare
- durable-objects
- foundation-models
- gmail-api
- microsoft-graph
- oauth
- passkit
- revenuecat
- storekit
- swift
- swiftdata
- swiftui
- wallet
- widgetkit
- workers
Log in or sign up for Devpost to join the conversation.