SoundLink uses a neo4j graph database to quickly find the shortest path between two artists. Each artist is represented by a node in the graph, and the songs are the connecting edges.
New artists are constantly being added to the database. SoundLink leverages the Spotify API to discover collaborations for the current artist. Artists that are discovered as collaborators from that artist are added to a stack to be processed.
SoundLink has two easy-to-use endpoints. The first is a typeahead prediction endpoint, and the second the endpoint to link two artists.
/raplink/api/v1.0 ***note: You may be wondering why 'raplink shows up here. That was originally the name of the application. One day I'll get around to changing it.
This endpoint takes two parameters: "start" and "end". They should take the value of the spotifyId of the artists to be linked.
This endpoint takes one parameter: "artist". The value should be whatever the user is currently typing into the search box.