Login interface powered by Firebase
Registration interface powered by Firebase
Reset Password interface powered by Firebase
Setting up a profile picture by either selecting an image from the library or taking a picture
Adding a detailed description of yourself that can be compared to other users interests and your compatibility can be gauged
Profile tab where you can perform an array of profile editing features
Buddy tab where you can view people who have a interests similar to your own, you have the option to view their profile and add them.
Recommendation tab where you can read user generated reviews and detailed guides to places you have indicated an interest in visiting.
However close me and my friends are, we always have completely opposite tastes in travel destinations. I would say California while they say Denver! and even if we ended up going to the same place we would want to do completely different things and end up having arguments like history museum vs beach. Hence I've always thought it will be a little cool if I could have someone like me I could travel with to places that I like and do things I like to do! This is one of the things i'm trying to do with the app. Also lot of the reviews you find online can be misguided or misleading, something that has personally affected me and my family on a trip and hence when users post their experiences instead of just a simple review, it'll make things a lot easier for a person planning to make a trip. Which is also something I am trying to address via the app.
What it does
The app accepts information about you such as your hobbies, interests etc and also a list of locations you are potentially going to travel to and compares it to other users interests and locations and show you a list of users with interests similar to your own. Based off the list of places you gave it fetches users posts on their experience in those locations and detailed information regarding their trips.
How I built it
I used Xcode for the most part to build the UI and imported the UIKit framework to aid me. I also installed and used cocoapods to make the inclusion of Firebase in the program a lot simpler and finally I used Firebase to authorize users in functions such as register, login etc.
Challenges I ran into
I had no idea how the backend for an IOS app worked and had a pretty hard time figuring it out and ultimately could only include the authorization portion of the backend but hope that contributors on git will help improve on that aspect and help in implementing the remaining backend functionality.
Accomplishments that I'm proud of
When I found out that either nobody knew IOS backend or nobody was interested in working on the small world project, I thought I wasn't going to be able to get anywhere without a team on such a massive and ambitious project but I'm pretty proud that I managed to achieve as much as I did in such a short duration of time.
What I learned
I learned how to build an IOS app from scratch which is insanely cool. I learned about Firebase and how I can implement it in my application to perform actions like Authorization which is neat since I don't have to worry about managing accounts etc. I learned how to use cocoa pods to manage packages in some sense for Xcode which will be very useful in the future when I'm doing some IOS development. Perhaps most importantly, I learned that when you take on such an ambitious project you should definitely have a team with you to ease the workload and make the entire process more streamlined and less stressful.
What's next for WATO!
I will continue to work on the app until I am satisfied that it is absolutely stunning. I also have a huge list of additions and modifications that I would love to make like adding a "Go or NO" rating system for places that users could mark post their experience to help others. Also make the add button much more integral which could potentially form a chat with the other user who has been recommended to you, so as to get to know them better and get a sense of whether they are actually someone you could potentially travel with. I am also open to any ideas that the community will have to offer as to how I can make the app better because, at the end of the day, the goal is to make a great app that helps users make their travel experience a lot more adventurous, immersive and centered around their own needs!!