Inspiration
Planning a trip usually means messing around a map app, notes, saved articles, and a spreadsheet of opening hours to see what's cool or whatnot. Once the trip ends, there's rarely a good record of where you actually went. With Viaggio we wanted one calm place to discover, plan, and remember every journey.
What it does
Viaggio is a personal travel companion for iPhone. You can:
- Explore places and destinations around you on a list or a map, even offline for places you've already loaded;
- Plan: describe an idea in plain language, like "a weekend in Lisbon focused on food and architecture", by typing or by voice, and get a day-by-day itinerary built around real places, routes, and opening hours. Multi-city trips are proposed one destination at a time for you to confirm;
- Get surprised: let Viaggio choose the trip for you, from a free weekend to journeys of up to 180 days;
- Check in at places as you visit them and grow your travel Passport with XP, country badges, and a record of everywhere you've been;
- Relive and repeat: finished trips go to your plan history, and you can redo one with a single tap;
- Stay in the loop with Home Screen widgets for your next and upcoming stops, Siri Shortcuts, and reminders.
How we built it
- Swift 6 + SwiftUI for the entire app, using strict concurrency throughout, with support from iOS 17;
- MapKit + Core Location for destination search, nearby-place discovery, maps, routes, and the GPS-based check-in radius, plus Google Places for venue photos, ratings, and opening hours;
- Google Gemini as the AI planning engine, with Apple Foundation Models as an on-device fallback and a network-aware layer that switches automatically when connectivity drops;
- Firebase (Authentication, Firestore, Cloud Functions, Crashlytics) for accounts, cross-device sync, the server-side assistant, and crash reporting, with Sign in with Apple and Google Sign-In;
- RevenueCat for the Premium subscription and paywall;
- UserNotifications + Speech for reminders and voice input;
- App Intents + WidgetKit so Viaggio lives beyond its own window, on the Home Screen and in Shortcuts;
- iPhone Duo support from day 1;
- A clean layered architecture (App / Domain / Features / Data / Infrastructure / Shared) that keeps Firebase optional: a fresh checkout with no credentials still runs on local storage and the on-device model;
- Localized in 7 languages: English, Portuguese (Brazil), Spanish, French, German, Italian, and Japanese.
Challenges we ran into
- Making AI plans trustworthy, because they can easily suggest places that are closed or don't exist. We ground every itinerary in real place data and opening hours so the plan works on the ground.
- Make it offline on your plans to make it easy to use even without connection.
- Designing for a new form factor and adapting the experience to iPhone Duo's cover screen and unfolded layout without breaking it on every other iPhone.
- Keeping it calm: packing AI planning, gamification, and a subscription into an app that still feels simple and unhurried.
Accomplishments that we're proud of
- An AI travel planner that produces real, usable itineraries, with Surprise Me trips of up to 180 days;
- A passport experience that makes checking in feel rewarding, now with a page-curl carousel and a dedicated cover on iPhone Duo;
- An app that keeps working offline and on a fresh checkout without any cloud credentials;
- Full localization in 7 languages.
What we learned
- How to design around AI's strengths and weaknesses, having real data, validating output, and having a fallback for when something "404s";
- To build around what travelers actually do before, during, and after a trip, not just around features;
- That shipping is the beginning: a travel app earns trust through steady updates and maintenance.
What's next for Viaggio
- Social layer: sharing check-ins, following friends' journeys, and community recommendations;
- Deeper Passport: more ways to collect, customize, and relive your travels;
- Fully offline-first travel: plans, places, and maps that work end to end without signal;
- More iPhone Duo: page-turn navigation across every section, so opening Viaggio feels like opening your actual passport. We also want to bring a a passport cover on the outer display and a two-column layout with a hinge gutter when unfolded;
Log in or sign up for Devpost to join the conversation.