Inspiration
When making quick plans to go to certain places, we are not always able to quickly take the weather into account. We just want to go to a place based on preference. However, when we go to that place and find out it doesn't work out, sometimes we'd prefer to go to nearby areas where the weather better fits our needs. This website promptly accomplishes this task.
What it does
This website takes in a location, a maximum temperature, a minimum temperature, and a radius which the person is willing to travel. Then, once the user clicks on the button, the target location is checked for its temperature. If it is within the range of minimum and maximum, the city is outputted. Otherwise, all cities within the radius that are within the temperature range are outputted, if any.
How we built it
WeatherAPI is used to scrape the weather at particular locations. Then, Bedrock is used to query for the list of cities within the radius of the target location. Flask, HTML, and CSS are used for the frontend and is ran through a python backend.
Challenges we ran into
We had trouble fetching the nearby locations using Bedrock with Claude Haiku. We were able to switch to the message API and resolve our issue. Next we had trouble running our program on the ec2 instance since it wouldn't clone our Github. Switching to using Personal Access Tokens fixed this. Finally, some parts of the code needed to be adjusted to use port 5000. This took time to figure out and debug.
Accomplishments that we're proud of
We're proud of getting the Bedrock query to work, as this took several hours of debugging. We're also proud of building a finished polished product that works and was successfully built within 24 hours.
What we learned
We learned how to use Flask, HTML, and CSS to build a frontend for python. We also learned how to query Bedrock and use it in python code. Finally, we became more familiar with using APIs such as the weather API and became more familiar with AWS services.
What's next for TravelRecommender
Next, we'd like for the user to be able to specify a time and date. We'd like to create more test cases and ensure our product is resilient and accounts for potentially unchecked errors. This would not only make our product better, but more reliable and future proof.
Built With
- amazon-ec2
- amazon-web-services
- bedrock
- css
- flask
- html
- python
- weather-api
Log in or sign up for Devpost to join the conversation.