When brainstorming project topics, we realized that all of us were coming up with AI-based travel itinerary apps. As much as these pieces of software serve their purpose, we wanted to go in a different way of approaching things. Instead of designing the journey itself, we decided to concentrate on how people would spend their journey. One of us thought of a recent travel to Japan where he found himself surfing through Google for popular destinations to travel to and things to see in these destinations. And that’s how an idea was conceived: why not create a global map that points to popular-reviewed destinations and provides people with a set of things to see at these points of attraction? To make it more interesting, we thought of rewarding people by giving points for getting things accomplished. They would not only see the world—they w but also rewards for their travel experiences as we ration for JetQuest was found in Jet Lag: The Game program where hosts travel around the globe getting things to see in a game-like manner. Gamification of travel was interesting to us so we wanted to put that enthusiasm to work in our app. And thus was JetQuest born—a title that perfectly described our idea of travel experiences in a game manner.
We learned much in the project’s journey not only from technical but from cooperative aspects as well. Varun working on frontend further learned experience in Next.js, Mantine UI Libraries, TypeScript, and Tailwind CSS. He learned how to create a seamless yet responsive user interface while working on APIs to get and display things dynamically. Karunya working on the backend implemented a robust algorithm to verify user-provided images based on task specifications. This involved working on natural language processing (NLP) and methods of image analysis. Karunya was also trained on how to bridge front to back so that the two communicate fluidly. Some tiny bugs included build errors and overlapping of containers that taught us to concentrate on details and debug correctly. There was that sneaky bug related to the mismatch of bool to string in JSON that took us several hours to resolve but ended up solidifying our hold on data types and serialization. Communication was needed in working in teams to inform us on how to divide responsibilities and assist each other in situations of difficulties.
JetQuest began with idea validation and designing basic features: a global map of popular destinations, task lists for all destinations, and reward points for every task accomplished. Varun was working on the front end where he was working on user interface building and working on APIs. He used Next.js for its feature of server-side rendering, Mantine UI for pre-built components, and Tailwind CSS for customizing components. Simultaneously, Karunya was working on the backend where he implemented an algorithm to analyze user-provided photos to ascertain if they accomplished their assigned task. He used NLP to analyze task descriptions and computer vision to verify photos taken by comparing them to given photos. Integration of frontend to backend was a breakthrough but was full of challenges of its kind. For instance, we stumbled upon build errors caused by a mismatch of data types in that it was of bool but was treated as a string. After hours of troubleshooting, we managed to identify the issue and debugged it to get the app working as planned.
Ensuring that the app was scalable and was performing well was one of the biggest challenges that we managed to overcome. Having a global map and numerous tasks to run on it meant that we needed to make the backend more robust to handle several requests simultaneously in an efficient way. To make things even more complicated, the algorithm for image verification needed to be precise but quick at the same time, so it needed to be properly tuned and tested. Overcoming these challenges despite everything, we managed to create a working and interactive app that lived up to our initial idea. At project closure, not only did we have a tool that we loved but also gained full-stack development, problem-solving, and teamwork experience. JetQuest is now deployed on Vercel, and cannot wait to see how people interact with it and see the world in a completely new way.
Built With
- appright
- axios
- cloudinary
- css
- javascript
- leaflet.js
- next
- openai
- python
- tailwind
- typescript
Log in or sign up for Devpost to join the conversation.