AI-based Travel Itinerary Planner

An app to move the daunting task of travel itinerary planning into the realm mobile AI technology

Industry:

Travel

Type:

Mobile development

Time:

January 2023 — Ongoing

Platform:

iOS

Yellow System
YWS > Case Study > Travel Itinerary Planner > Content > ImageBundle

Project Idea

Our client approached us with the idea of an AI-based travel planner that will help users organize their trips in seconds. The app simplifies travel planning by helping users find the optimal transportation, accommodations, and sightseeings all in one place. The main goal of this solution is to enhance the travel experience, ensure travelers can easily access all the best options for their needs, and relieve the stress connected to organizing trips.

We were responsible for

  • Converting wireframes to colored designs
  • Backend development
  • Frontend development

The client had

  • Idea
  • Wireframes
  • Feature list
YWS > Case Study > Travel Itinerary Planner > Team > Image

Team

  • Project manager

  • Backend engineer

  • iOS engineer

  • QA engineer

  • UX/UI designer

Key features

Key feature 1

Activity and event suggestions

A user can get recommended events according to their expectations. For example, if they are a music fan, the app can get a list of interesting music festivals, shows, and concerts happening during the user's travel dates.

Read more

Activity and event suggestions

A user can get recommended events according to their expectations. For example, if they are a music fan, the app can get a list of interesting music festivals, shows, and concerts happening during the user's travel dates.

Read more
Key feature 2

Destination recommendations

If a user doesn’t know where to go or has several options to choose from, the app will help them choose the destination according to previous travels and personal preferences.

Read more

Destination recommendations

If a user doesn’t know where to go or has several options to choose from, the app will help them choose the destination according to previous travels and personal preferences.

Read more
Key feature 3

Transportation guidance

Besides looking for plane tickets, the app offers information on public transportation options, schedules, and routes to the destination itself. It also provides directions and maps for walking and driving.

Read more

Transportation guidance

Besides looking for plane tickets, the app offers information on public transportation options, schedules, and routes to the destination itself. It also provides directions and maps for walking and driving.

Read more

Trip itinerary creation

The app helps users create detailed itineraries for their trips, including activities, accommodations, and transportation options. It can also optimize itineraries based on time constraints and distance and assist with visa requirements, passport expiration alerts, and necessary travel documents.

YWS > Case Study > Trip itinerary creation

ChatGPT integration

With the help of ChatGPT integration, users can use ChatGPT for planning and asking any questions about all the points of the itinerary. From accommodations to activities, the app will get the most relevant answers from our database.

YWS > Case Study > ChatGPT integration

More features

Safety and health tips

The app provides information on local safety conditions, health alerts, and vaccination recommendations. Also, a user can find emergency contact information and nearby medical facilities.

Packing lists

Users can generate lists of necessary things to pack for any particular destination, weather, and planned activities.

Offline access

The app allows users to access their travel plans and information offline which is useful when traveling in areas with limited connectivity.

Right block

Tech stack

Here is the list of technologies we used on this project.

iOS
Backend

Programming language

Swift 5

REST API

Alamofire, Swagger Codegen

Code style and conventions

SwiftLint

App distribution

Fastlane, Firebase App Distribution

Maps

Google Maps iOS SDK

Architecture

MVVM + C

Local database

CoreData

Crash analytics

Firebase Crashlytics

Localization

SwiftGen

UI

UIKit + SnapKit

Programming language

TypeScript

Additional services

Firebase Auth, Firebase Storage, Google Analytics, Firebase Cloud Messaging

Framework

NestJS

AI

Open AI

Database

PostgreSQL

ORM

Sequelize

Development Challenges and Solutions

How our team coped with a range of development challenges

Real-time data processing

Challenge: We needed to create an algorithm to track destinations and related information in real-time.

Solutions: We used event emitters + sockets. It was necessary to create a real-time connection. Now, when the user asks for a new itinerary, a new connection is created and the initial data is sent.

AI training

Challenge: ChatGPT had trouble with understanding our database.

Solutions: After thorough research, we decided to put dynamically generated information about the database into context.

Map display

Challenge: We needed to implement a map to allow users to see the itinerary. However, custom map implementation will take a lot of time to implement.

Solutions: We chose Google Maps iOS SDK, an out-of-the-box solution that helped us implement map features quickly.

Data caching

Challenge: Sometimes, data loading from the API takes a long time. For a good user experience, the loading time should be decreased.

Solutions: We cache some information in RAM and some in the local database to display it first. Then the app will update information after fetching it from the API.

Results

Our team is testing the app and adding the final touches to the design.

YWS > Case Study > Travel Itinerary Planner > Results