Inspiration
We realized that we each explore new cities in different ways. One of us prefers learning about the history behind different buildings and landmarks while the other is interested in tasty restaurants and obscure parks. The thing we share in common is that we don't want to be burdened by looking down at our phones while trying to take in a new place. We wanted to look up, listen, and live in the moment. We want to seamlessly learn and explore as we go.
What it does
AudioAtlas is an AI-driven audio app that narrates landmarks and other places of interest to the user in real-time as they explore a city. It is customized based on the user's preferences—whether they prefer learning about an area's history or finding a tucked-away cafe. All the user has to do is simply turn the app on and walk to wherever they are going. Our system figures out their location, and like a real tour guide is able to point to things naturally, by saying things like "to the left is", or "just behind you". The user can also modify their preferences whenever they want.
How we built it
The frontend was built with Flutter, enabling users to pause and play the audio narration and interact with a map that shows the corresponding landmarks of interest. We used Open Street Map for the map, and we used the ElevenLabs text to speech API to convert the narration messages received from the backend into audible dialogue.
The backend was build in Python using Fast API. The backend implements an intelligent graph using Langgraph that is able to use the user's location and get landmarks of interest using the GoogleMaps API. It is then able to calculate the positions of these landmarks relative to the user. It then, based on the user's preferences, uses the Tavily API, to search information about specific landmarks in detail, and then combines that all in an engaging tour to pass to the frontend. Information about previously said content is stored in a database for the user, and it is made sure that content isn't repeated.
Challenges we ran into
What we learned
We learned how to run mobile apps on our phones. We weren't too experienced with mobile dev, so getting and testing everything on our phones was a little bit of a challenge.
Built With
- elevenlabs
- fastapi
- flutter
- google-maps
- langgraph
- python
- tavily
Log in or sign up for Devpost to join the conversation.