Time waits for no one. We all know that time is a finite resource, and as a result, we try to do as much as we can with the limited amount of time we have. However, in all our busyness, we often fail to take a step back and reflect on whether the activities we engage in actually bring us joy. Life is too short to be anything but happy, hence our team decided to create a product that would help individuals optimize their lives for happiness.
What it does
SparkJoyTM analyzes both your Google Calendar schedule and the associated songs listened to on Spotify during a specified time period in order to find your optimal schedule based on the songs you play. Spotify gives each of their songs a "positiveness" score that we factor into our calculation that makes you the happiest.
How we built it
We built the dashboard using React and Bootstrap and used a Node.js backend to authenticate the user's Spotify and Google Calendar accounts. We used Firebase for our database, and Google Cloud Platform's cloud functions to get and post relevant data to and from our database.
Challenges we ran into
Google Cloud Platform's cloud functions were especially tough to navigate. We initially wanted to use functions to read and write data to GCP's Datasource. However, we were unable to successfully do so despite hours of troubleshooting. We eventually decided to use Firebase as our database, and was eventually partially successful at incorporating cloud functions to hit the database.
Accomplishments that we're proud of
We took a very user-centric approach and put a lot of thought and effort into the User Interface.
What we learned
GCP and 3rd party authentication were very new technologies for all of us. We learned that such layers contained another layer of complexity, and that we should budget more time for working on them in the future.
What's next for SparkJoyTM
Spark more Joy with more features like time management, automatic iterative Spotify playlists, and more! We hope to incorporate more sources of data to more comprehensively capture an individual's schedule and accurately determine his/her mood. With a more holistic dataset, we hope to be able to improve our product and make more tailored recommendations to our users.