A few weeks ago, I finally got around to watching Pulp Fiction. It’s a great movie, but when Harvey Weinstein’s name rolled up in the credits, I felt torn, and even a little bit guilty; I had enjoyed the work of a predator. Beyond Hollywood, the #MeToo movement is finally taking down powerful villains we used to look up to. Each such scandal that makes its way to the news prompts the same question:

How should we treat culturally significant work produced by disgraced celebrities?

What it does

Atone provides a small remedy to this much larger issue. Every time you listen to a song by someone you disagree with, Atone’s native app will update a running tally. Then, you’ll be encouraged to make a donation proportional to your “blacklisted” media consumption count to a respectable and relevant charity.

When you use Atone, you make it clear that you separate an individual’s artist work from their individual actions. And you stand with the many victims whose stories aren’t often heard.

How we built it

  • Flask cloud-hosted REST API
  • Mobile app, built with the cross-platform NativeScript-Vue framework

Challenges we ran into

  • Understanding the Spotify API
  • Connecting a backend with a mobile app
  • Using a (relatively new and unsupported) mobile app framework

Accomplishments that we’re proud of

  • We made a working app that’s accessible to the public
  • We’re helping people improve the world around them

What we learned

  • Spotify APIs and SDKs
  • Hosting an HTTP REST API
  • PythonAnywhere deployment

What's next for Atone

  • Link to other music streaming services, like Apple Music
  • Branch out to video streaming services, such as Netflix
  • Add iOS support; we weren’t able to access iOS dev tools during the hackathon
  • Run deeper searches into users’ music history and schedule automatic tracking synchronization (every week, get a notification about your listening history from our app)
  • Integrate a payment API to allow donations directly from the app
  • Improve UI when adding new artists via autocomplete and autocorrect
  • Keep user "artist blacklists" across app sessions

Built With

Share this project: