Inspiration

Every trip ends up as hundreds of photos buried in a camera roll and a group chat nobody scrolls back through.

We noticed that most travel apps focus on planning trips, finding destinations, or booking hotels. But the experience often becomes fragmented: we plan in one app, navigate with another, save photos somewhere else, and rarely turn those memories into something meaningful.

We wanted one place that follows a trip all the way through: plan it before you go, map it while you're there, and keep it as a scrapbook that looks like your trip.

That’s how Plotted started: an AI-powered travel companion that helps you plan your journey, capture your experiences, and turn your memories into creative visual stories.

Our goal was to make travel planning more personal, and travel memories more than just another folder of photos.

What it does

Plotted is an AI travel companion with three stages:

  1. Plan Your Journey: Create personalized travel itineraries with AI assistance. By integrating Google Maps, Plotted connects suggested destinations, routes, and travel information to an interactive map, making it easier to visualize and explore a trip.
  2. Collect Your Memories: While travelling, mark stops as visited and add a mood, photo and rating. Rather than treating a journal as a traditional list of entries, we envision it as an interactive scrapbook where every memory becomes part of a larger travel experience.
  3. Turn Memories into Art: Upload photos and Plotted turns them into a travel journal:
    • Two hand-built looks: Polaroid and Minimal Zine.
    • Design with AI: a vision model studies your photos and notes, then designs a unique look and lays out every page.
    • Photo Studio: restyles any photo into illustrated art using four style "skills". Results are saved to an Asset Library that the AI auto-names and tags so you can search it.
    • Edit freely: drag, resize and rotate anything. Adding personalized stickers and washi tapes.

Our larger vision is to connect these creations into a visual travel story that users can revisit and share.

How we built it

We divided Plotted into several interconnected parts: AI trip planning, map-based exploration, travel journaling, and photo transformation.

  • Stack: Next.js 16 (App Router), React 19, TypeScript, Tailwind 4, Mapbox + OpenStreetMap. The frontend uses an editorial visual system we designed in Figma.
  • Trip planner: structured-JSON prompts to Qwen (qwen-flash), with OpenAI supported as well. Malformed output gets one repair round, every plan is validated, and if the AI still fails we show a hand-built starter plan, so the demo never shows a blank screen.
  • AI journal design (Google Gemini API): we send gemini-3.5-flash downscaled photos, their measured colour palette and every page's titles, notes and ratings. Gemini replies through a structured-output schema with a full design. If it's unavailable, the request falls back to gemini-3.1-flash-lite, then Qwen-VL, then a local palette-based design.
  • Keeping text readable: models sometimes put text on top of photos, so we estimate each element's footprint.
  • Photo Studio: four style skills are compiled into prompts for an image model (google/gemini-2.5-flash-image via OpenRouter). The app checks OpenRouter's model catalog for image-in/image-out support before generating anything that could be billed. A free in-browser Canvas mode is always available.
  • Auto-tagging: Kimi K3 (via OpenRouter) looks at each saved asset and returns a label and tags.
  • Storage: photos are stored in IndexedDB and deduplicated by content hash, and localStorage only holds short references. PDF export uses a small PDF writer we wrote that embeds each page as a JPEG.

Challenges we ran into

  • AI that looked the same every time : Even when we changed the prompts, the journal design is almost the same template but just in different colors. We realized that meaningful visual differences required more than changing a few descriptive words. We defined distinct rules for composition, texture, illustration, and image transformation. Then we rebuilt it so the model controls each page's layout, decoration and artwork, then added collision handling for when it put text over photos.
  • Shipping heavy features in the browser. A ~40 MB background-removal model we tried loading from a CDN wasn't reliable enough for a live demo, so we cut it.

Accomplishments that we're proud of

We’re proud that we developed Plotted as more than a conventional AI itinerary generator. We developed a complete loop from "plan a trip in one sentence" to "export a journal you'd actually print".

We’re also proud of developing four distinct art-direction systems for the Photo Style Studio, giving users more creative control over how their travel memories can look and feel.

What we learned

  • Building an AI product isn’t just about connecting APIs, but about designing an unique experience for users.
  • We learned that design and engineering need to evolve together. A feature can work technically, but making it intuitive, personal, and enjoyable is a different challenge.

What's next for Plotted: Plan it, Map it, Keep it

  • Accounts and cloud sync so journals follow you across devices.
  • Shared trips: friends who travelled together can co-create one journal, with streaks for posting memories, commenting each other and unlocking more template styles.
  • Improving the AI image transformation experience
  • We want Plotted to help people do more than organize where they’ve been. We want to help them tell the story of being there.

Built With

Share this project:

Updates

Submission history