SoundLink

Web App GitHub

Under the Hood

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.

The Data

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.

API Documentation

SoundLink has two easy-to-use endpoints. The first is a typeahead prediction endpoint, and the second the endpoint to link two artists.

Base URL:

/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.

Link

URL

/link

HTTP Type

GET

Parameters

This endpoint takes two parameters: "start" and "end". They should take the value of the spotifyId of the artists to be linked.

Typeahead

URL

/typeahead

HTTP Type

GET

Parameters

This endpoint takes one parameter: "artist". The value should be whatever the user is currently typing into the search box.