Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

ISP – intelligent song picker

Have you ever felt overwhelmed when choosing a song from Spotify?

This is the moment when ISP will help you.

All you need to do is take a selfie. ISP will do the rest of the magic* and provide you with a song that fits your musical taste, feeling and environment.

Don't worry, the picture stays on your device.

*Machine learning for face recognition, emotion classification, fancy song search algorithms and other lovely stuff


Click to watch a demo of this project

Try now

💥 Try it out right now at!


I developed this project during the course Interaction/Programming by Prof. Dr. Thomas Rist at the University of Applied Sciences Augsburg. In addition to the web application I wrote a paper about this project.


Create a local running copy of this project


  1. Install dependencies

    cd client
    yarn install
  2. Start local development server

    yarn serve
  3. Or create a build for deployment in production

    yarn build


  1. Install dependencies

    cd server
    yarn install
  2. Run local nodemon server with hotreloading

    yarn serve
  3. Or run production server on node only

    yarn production

Find out more

This is a list of the core dependencies used in this project for your further reference.




  • Improve stability
  • Add Autoplay function to go on playing songs after the first one is finished
  • Handle Spotify non-premium users
  • Add contenthash to js files for improved caching
  • Create robust mobile version (currently a very bad workaround is in place here)
  • Reduce own queries to spotify and instead leverage the capabilities of the Spotify Web Playback SDK