We had the experience of having many of our vacations ruined by inadequate planning and a lack of readily available activities. Sadly, actually planning out a vacation is not as fun as the actual trip. Therefore, we decided to make CityConnect in order to make the process of vacation planning much easier and more enjoyable.
What it does
Our application allows the user to first enter a city that they anticipate vacationing in. They are then presented with a schedule that is dynamically updated as they add activities from different categories. After they choose a city and a category, the top five results for relevant places are presented along with any available information such as ratings, price level information, address, hours, and the time that people typically spend at the place.
How we built it
Challenges we ran into
Although we had a lot of experience with working in Python, we initially encountered issues with finding the right API to use and getting it to behave nicely. However, finding usable data was only the beginning of the battle. The rendering of the webpages using Flask was initially difficult to wrap our heads around, but once we got the hang of it we proceeded nicely in this area. For us, the front-end was particularly challenging. We didn't have much experience in front-end development so making the application actually look nice and simultaneously have all of the functionality that we wanted slowly became an impossible task. We worked slowly to build our webpages from features such as background images to the presentable table, but in the end we were able to successfully meet all that we set out to do.
Accomplishments that we're proud of
We are proud of the entire web application and the amount of work we put into it. The finished product is obviously extremely precious, but each individual function and line of code that we worked on also holds significance.
What we learned
What's next for CityConnect
The next steps for CityConnect are to make the app run independently. We also would like to implement user accounts so that information can be more secure and stored separately. Improvements in the GUI are also an important feature we wish to improve. Most importantly, we want to actually test the application on some friends and family to see what features can be improved/modified to make it more user-friendly and useful in the real world.