Kyle – Status Post #5 – 11/13/22

For this past week, our team met on thursday for about 2 hours to discuss user concept testing data, as well as to talk about how the “web” of artists will be structured on Omni. I then did individual work regarding the initial state of Omni for roughly 4 hours.

My Work

Server Research (1 hour)

  • I researched into DigitalOcean (https://www.digitalocean.com/) and decided to use their hosting for our Omni node server. I decided this because it is cheap (only $6/month), has easy terminal access, and DigitalOcean as a whole has very good reviews. We will be running node on this server, in order to serve as a “middle man” between the APIs that we are using for Omni, and Omni itself, as BlueHost (https://www.bluehost.com/) did not allow for terminal access.
  • In order to use the Spotify API, you need to have a valid Spotify account. It does not have to be premium, but you do need an account. https://developer.spotify.com/policy/

Code/Server Implementation (3 hours)

  • I bought the DigitalOcean server and used the terminal to install node.js, express.js, as well as the Spotify API. All of the javascript that is interacting with the Spotify API will be hosted on this server.
  • I downloaded Visuify’s code (Visuify Repo, Visuify App) and added it to the Omni repository (https://github.com/Kdolphin2284/Omni) in the folder “omni-dev”. I started working with the code but realized that my version of Visuify was not prompting me to sign in with Spotify, so it would not work.
  • I looked through the code, and eventually understood that Visuify’s repo did not contain the code needed to prompt the user to sign in with Spotify, or the code needed to generate user session authentication tokens. I looked into the Spotify documentation (Spotify API Documentation, Article of Spotify Login Prompt) to see how to prompt a user to sign into Spotify, and with the help from a friend it was able to be implemented.
  • A user session authentication token system was required, as the Spotify API requires a valid authentication token to be used. With the help from a friend, this was able to be implemented. When a user comes to https://omnimusic.co/omni-dev/app/, a session token is generated and assigned to them. Spotify then requires this to enable the sign-in prompt, effectively connecting Spotify capabilities to the app for the user.
  • Here is a link to the Visuify code example from which we will be creating Omni: https://omnimusic.co/omni-dev/app/

In the Future

  • Setting up the server and the Visuify code example took much longer than expected, so I was unable to get to wiki.js artist images implementation, as well as Omni styling on the website. This week I will be working on both of these, but will be focusing on wiki.js first, as the images of artists are important to the function of Omni.
  • If I have time I will be looking into pulling artist information from the Spotify API and adding it onto a dynamic modal. This will allow users to see actual artist information, opposed to just their connections.
  • I will be looking at the code of the Visuify code example to try to figure out how to limit the amount of connections that are being shown at once. There is a lot of good information, just too much at once – we do not want to overwhelm the user.

Comments

No comments yet. Why don’t you start the discussion?

Leave a Reply

Your email address will not be published.