Inspiration

Our app is inspired by Spotify Wrapped and its recent addition of 'Sound Towns' to incorporate location into listening statistics. We want to take that functionality one step further -- giving users the ability to see where songs are being played and make location-based playlists from anywhere in the world.

What it does

Chordinate allows Spotify listeners to connect with the music being streamed around them; the app offers them an interactive map of streaming songs near them while also giving personalized recommendations. Users are also able to explore trending sounds of other locations from as near as the neighborhood around them to as far away as a global scale.

This real time connection is something that is currently missing from other streaming and social media apps today. Using Chordinate, listening to music turns into a communal experience, encouraging users to explore new artists and genres. By enabling users to connect with others through shared listening experiences, Chordinate enhances music discovery and promotes a sense of community.

How we built it

Our team used the ArcGIS Maps SDK for Kotlin and Jetpack Compose for the User Interface framework to develop the application. The main map screen connects to a feature layer built in ArcGIS Online, which points representing songs played at different locations. The application displays the user's location and takes advantage of callouts to show the current song playing at the point features on the map.

The playlist recommendation screen creates a geofence around the user's location, and compiles a list of the songs from the features on the map within that geofence, allowing the user to see recommendations for a "Sounds of Your Location" playlist.

Challenges we ran into

Our team has limited experience with the Kotlin Maps SDK for Android and the Spotify SDK; therefore we ran into some challenges such as:

  1. Bridging our application with Spotify through Authentication and Broadcast Receiver.
  2. Editing the web map, such as adding a point on the web map from the application and sending updates.
  3. Getting the Feature Layer and Feature Tables as we often met with empty/null values in the table fields.

However, through collaboration within our team, help from hackathon mentors, and Kotlin documentation and samples, our team was able to create a functioning product we are proud of.

Accomplishments that we're proud of

Our team is proud that we were able to connect our application to Spotify, receive data from it in real-time, and edit a shared Web Map from our mobile application based on the user's listening data. Although there is still more work to do to implement some of our "stretch goals", we are proud of the product we were able to create during the Hackathon Weekend.

What we learned

Our team learned a lot about the Kotlin Maps SDK and developing applications for Android as well as how to receive real time data from SDKs such as Spotify SDK. In addition, the team learned many strategies of collaboration as we worked together to create our final product. We all brought a diverse range of coding skills and experiences with Esri products into this weekend, and we learned how to optimize our collaboration and bring that into the production of Chordinate.

What's next for Chordinate

A large amount of data will be needed to lift this idea off the ground -- a stretch goal we're looking forward to is aggregating streaming patterns to create locationally based playlists, like 'The Sound of Redlands' or 'Today's Trends in Southern California.'

Our team's immediate next step is to develop our application for iOS to reach more Spotify listeners and connect them to the sounds around them.

Built With

Share this project:

Updates