Inspiration

Planning a trip can be stressful. Between unpredictable weather, different trip purposes, and forgetting key items, it's easy to miss essentials. We wanted to create a tool that removes the guesswork and helps travellers pack smarter and faster, based on their destination, duration, and travel goals.

What it does

ZipTrip is a web application that:

  • Let users log in with Firebase Authentication
  • Allows users to create and save trips with details like destination, duration, and purpose
  • Generates a customized packing checklist using Google's Gemini API and live weather data
  • Let users interact with and check off packing items
  • Stores trip data and checklist progress in Firestore, ensuring data persists across sessions
  • Provides an Activity tab that suggests potential activities in the user's specified location, enhancing trip planning

How we built it

Frontend: React + Vite for fast development and dynamic UI Backend: Node.js with Express for Gemini API communication Authentication: Firebase Authentication (Google & Email login) Database: Firestore for storing user data and checklists AI Integration: Gemini API for generating intelligent, purpose-aware packing lists APIs used: Google Places API (for destination info), OpenWeather API (for weather data) -> All via Gemini API

Challenges we ran into

CORS issues between the frontend (5174) and the backend (8989) during development Handling merge conflicts and synchronizing local and remote Git branches Ensuring the AI-generated checklist was reliable, relevant, and cleanly formatted Structuring Firestore to handle per-user and per-trip checklist storage

Accomplishments that we're proud of

Successfully integrated real-time AI suggestions into a practical use case Built and deployed a working full-stack app in 24 hours Designed a user-friendly interface for both tech-savvy and casual users Navigated and resolved tough Git issues and conflicts collaboratively

What we learned

How to integrate and format AI-generated content into real-world applications Firestore's best practices for data modelling and real-time syncing Efficient frontend/backend communication using Express + Vite How to build and test a feature-rich app quickly under time constraints

What's next for ZipTrip

Enable trip sharing so users can collaborate on travel plans Add budget tracking and itinerary suggestions Include an Activities and Events tab to view fun things you can do during the trips Expand support to handle health/travel advisories

Built With

Share this project:

Updates