javascript – Web-Based Music Royalty Measurement Tool

Working on a passion project so I am willing to invest the time & research, just need some starting advice/tips.

Currently just started and have only…

  • AWS Light Sail Sever
  • WordPress + bitnami

Looking to create a web-based music recording royalty model & graphing tool that breaks down different royalty earning measurements for artists based on their data and generates graphs. The data will be retrieved from the artist’s TuneCore & DistroKid account. Averages, Change in Earnings based on catalog size, etc. (Not worried about the math part so much right now since I have these calculations done already).

The big hurdle that is keeping me in the way is figuring out a way to grab this information from the outside websites & accounts. This is needed so that my web app can then generate graphs and models off of their data. I am not looking to store their account information and data, other than the streaming data needed to generate the graphs and charts. Streaming reports can be downloaded from TuneCore (.CSV file) & DistroKid (.TSV file)

The streaming reports are typically stored in the “bank”.

My belief is that DistroKid & TuneCore are pulling their numbers & stats from the .CSV & .TSV files stored on their end.

A website called Royalty Exchange offers something quite similar, however, they’re collecting from different royalty agencies and don’t deliver the data I am looking for. They’re collecting data from artists’ publishing agencies.

Royalty Exchange has a blog post that shows their early model of the “Royalty Calculator” and how they used the user’s inputted username and password for their BMI (publisher) account to access their data and reports. Blog post link with video demonstration.

My thoughts/questions were

  1. Is Royalty Exchange is using JavaScript & AJAX in order to collect the inputted Publishing Account Username and Password. Maybe that, once RoyaltyExchange’s app got access to the account it downloaded and store the .CSV / .TSV information to the registered artist’s account on the Royalty Exchange. Bringing the data from BMI (Publisher) to the Royalty Exchange’s server.
  2. While not storing the artist’s username and password, RoyaltyExchange stores the catalog & streaming information in their servers in order to draw the graphs and measurements for the artist. Wouldn’t this be the case if they’re able to show that information in the artists’ dashboard without them needing to sign into their Publishing account again?
  3. Maybe instead of downloading & storing the.TSV and .CSV files – Royalty Exchange’s app is just scanning for the specific artist’s stats on the site and transferring it some other way?
  4. Like mentioned in the beginning, I am aware of how intense or complex this may sound especially for my obvious lack of experience, but it’s a passion project of mine that I’d really like to work on. I feel like this community though will help point me in the right direction with what I need to brush up on & learn.

Image Links For Reference:

Appreciate it, anything will help!