A wrapper for libspotify

Usage no npm install needed!

<script type="module">
  import nodeSpotify from '';



Build Status node-spotify wraps the C library libspotify for usage with NodeJS.

A webpage for the project is here:

I'm working toward version 1.0.0 which is not meant to provide everything libspotify offers. But I intend to wrap all libspotify types and provide methods to access them where possible. Options and convenience features my lack, though.


  • libspotify must be installed
    • Linux users get it from here
    • OSX users can use homebrew (brew install libspotify) or download it from here
  • an appkey for libspotify, get it here. Choose binary, not C code.
  • users of libspotify must have a Spotify premium account, this is required by Spotify.
  • (Linux only) If you want audio the ALSA audio system, should be installed in most distributions [1]

[1] See building from source if you don't need/want platform-native audio (i.e. ALSA/OpenAL) in node-spotify.

Building from source

node-spotify is prebuilt with node-pre-gyp. If your NodeJS version or architecture is not available it will build automatically from source.

If you want to force a build from source you can run npm install node-spotify --build-from-source. There's one special option you can set when compiling node-spotify: --native_audio=false will compile/link no ALSA/OpenAL audio code (depending on your platform). Default is true. This is both settable for node-gyp and npm.

node-spotify uses Nan to compile on different NodeJS versions. 0.10, 0.12, 4.x, 5.x, 6.x. should all work.

If you use OSX and have installed libspotify as a framework you need to edit the binding.gyp file. Remove "-lspotify" and write instead as one link option: "-framework OpenAL -framework libspotify". This is due to a bug in node-gyp that will eliminate a duplicate "-framework" entry from the link settings. If you have installed libspotify via homebrew you don't need this step.

Used software