Inspiration

Planning a trip should be easy, not stress-inducing. Our project, Gateway, was inspired by the idea to make travel planning easier, especially for those who want personalized, budget-friendly, and planned trips. When it comes to planning trips, we have to visit so many websites—several for hotels, many for flights, and even more for seeing events and places to eat—making the entire process undesirable and cumbersome. Additionally, managing costs, time scheduling, and considering potential bottlenecks, makes trip planning so much more stressful.

On the other hand, existing solutions, such as TripAdvisor's new AI assistant, and Layla both are basic LLM models used for setting time schedules for very generic events, such as going to landmarks and tourist attractions, rather than spending time at cultural festivals, historical spots, and events that are only available during the duration of your trip. This can include specific Broadway shows in New York to the Hakata Dontaku Festival in Japan that only happens in May. Gateway solves all of these problems and provides this very experience, unlike no other existing solution.

What it does

Gateway is our solution to this problem that has been long left unsolved. Your first step is defining how you wish to travel: solo, or with a group. If you are traveling with a group, you can enter your other groupmates’ locations to suggest a common place to meet in the center of everyone, minimizing travel costs, but you can always choose your own destination. If you plane to travel solo, you can simply enter a destination and continue.

The next step is selecting general activities you would like to experience on your trip, such as going to museums, culturally significant places, nature-related outings, or festivals and concerts. Upon doing this, our custom web scraper algorithm reads through flight options, localized event calendars and schedules to create a large variety of options for you to have when planning your trip.

How we built it

Gateway was developed as a web application using Flask as the primary framework to handle server-side operations. Flask provided the flexibility and simplicity needed for rapid development and prototyping. We designed the front end with Bootstrap, ensuring a responsive layout that adapts to different screen sizes and provides an intuitive user experience. This combination allowed us to create a seamless interface where users can interact with their personalized travel plans.

For data storage and management, we used SQLAlchemy as the ORM to interface with a SQL database, making it easier to structure and retrieve travel information. We implemented Flask-WTF for form handling, which allowed us to validate user input smoothly. Through Flask templates, we organized the HTML pages, dynamically rendering trip information, budgets, and other user-specific data in real-time, ensuring that changes were immediately visible to the user.

Gateway also incorporates OCR (Optical Character Recognition) to further streamline the travel planning experience. Using OCR, users can upload images of travel documents or notes, and Gateway extracts relevant information such as dates, locations, or budget details directly from the images. This feature, powered by OCR libraries, minimizes manual data entry, saving users time and making the platform even more convenient for quick trip setup.

Each component, from database integration to form validation and interface design, was chosen to maximize efficiency and maintainability, creating a cohesive platform where users can easily manage and view their travel itineraries. The combination of Flask’s powerful backend capabilities with Bootstrap’s responsive styling resulted in a product we’re excited to continue building on.

Challenges we ran into

Creating a streamlined user experience and handling database interactions were primary challenges, especially with integrating responsive elements and ensuring smooth data retrieval and updates. Deciding to experiment with such a large number of new technologies, we encountered steep learning curves to complex technologies. In order to continue with the project we had to learn on the go with online resources and countless videos. Not to mention struggling through severe lack of sleep and an energy deficit as our team had gone through the Boilermake 5k Run in the morning of October 26th.

Accomplishments that we're proud of

We held on strong as new students in a challenging college environment to pursue our true passion for computer science and experiment with new technologies. We are extremely proud of ourselves for developing a fully responsive interface that enables users to create detailed travel plans quickly and access trip information intuitively.

What we learned

Working on Gateway taught us that, while developing with Flask, SQLAlchemy, and Bootstrap, each stage of creating a user-centered product has its unique challenges. Integrating databases with SQLAlchemy to manage complex data interactions was a learning curve, and we encountered roadblocks in creating a responsive, visually appealing interface with Bootstrap. These challenges reinforced that perseverance, coupled with a hopeful and focused mindset, enables problem-solving and innovation.

What's next for Gateway

By refining our web scraping algorithm, Gateway can rapidly gather and analyze data from multiple travel websites. This will allow us to compile up-to-date itineraries that consider the latest travel trends, user reviews, and availability of attractions, hotels, and activities. Additionally, by leveraging machine learning, we can tailor itineraries to user preferences, suggesting activities based on past trips, interests, and even seasonal events in the destination. In the future, partnering with travel-related companies allows Gateway to offer users exclusive coupons and discounts on accommodations, attractions, and transportation services. These could be tailored based on user behavior and preferences

Link to Demo: https://youtu.be/5NOIdiryDGU

Built With

+ 4 more
Share this project:

Updates