A wrapper to work with the Spotify Web API
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
examples
src
tests
.babelrc
.editorconfig
.eslintrc.json
.gitignore
.travis.yml
CONTRIBUTING.md
LICENSE.md
README.md
index.js
package-lock.json
package.json
webpack.config.babel.js

README.md

Spotify Wrapper WJ

A wrapper to work with the Spotify Web API.

Build Status Coverage Status

Browser Support

This library relies on Fetch API. And this API is supported in the following browsers.

Chrome Firefox Opera Safari IE
39+ ✔ 42+ ✔ 29+ ✔ 10.1+ ✔ Nope ✘

Dependencies

This library depends on fetch to make requests to the Spotify Web API. For environments that don't support fetch, you'll need to provide a polyfill to browser or polyfill to Node.

Installation

$ npm install spotify-wrapper --save

How to use

ES6

// to import a specific method
import { method } from 'spotify-wrapper';

// to import everything
import * as spotifyWrapper from 'spotify-wrapper';

CommonJS

var spotifyWrapper = require('spotify-wrapper');

UMD in Browser

<!-- to import non-minified version -->
<script src="spotify-wrapper.umd.js"></script>

<!-- to import minified version -->
<script src="spotify-wrapper.umd.min.js"></script>

After that the library will be available to the Global as spotifyWrapper. Follow an example:

const albums = spotifyWrapper.searchAlbums('Choosen Artist');

Methods

Follow the methods that the library provides.

search(query, types)

Search for informations about artists, albums, tracks or playlists. Test in Spotify Web Console.

Arguments

Argument Type Options
query string 'Any search query'
type Array of strings ['artist', 'album', 'track', 'playlist']

Example

search('Incubus', ['artist', 'album'])
  .then(data => {
    // do what you want with the data
  })

searchAlbums(query)

Search for informations about Albums with provided query. Test in Spotify Web Console with type defined as album.

Arguments

Argument Type Options
query string 'Any search query'

Example

searchAlbums('Incubus')
  .then(data => {
    // do what you want with the data
  })

searchArtists(query)

Search for informations about Artists with provided query. Test in Spotify Web Console with type defined as artist.

Arguments

Argument Type Options
query string 'Any search query'

Example

searchArtists('Incubus')
  .then(data => {
    // do what you want with the data
  })

searchTracks(query)

Search for informations about Tracks with provided query. Test in Spotify Web Console with type defined as track.

Arguments

Argument Type Options
query string 'Any search query'

Example

searchTracks('Drive')
  .then(data => {
    // do what you want with the data
  })

searchPlaylists(query)

Search for informations about Playlist with provided query. Test in Spotify Web Console with type defined as playlist.

Arguments

Argument Type Options
query string 'Any search query'

Example

searchPlaylists('Happy Day')
  .then(data => {
    // do what you want with the data
  })

getAlbum(id)

Search for informations about a specific Album with provided id. Test in Spotify Web Console.

Arguments

Argument Type Options
id string 'Specific id'

Example

getAlbum('4aawyAB9vmqN3uQ7FjRGTy')
  .then(data => {
    // do what you want with the data
  })

getAlbums(ids)

Search for informations about some Albums with all id's. Test in Spotify Web Console.

Arguments

Argument Type Options
ids Array of strings ['id1', 'id2']

Example

getAlbum(['4aawyAB9vmqN3uQ7FjRGTy', '1A2GTWGtFfWp7KSQTwWOyo'])
  .then(data => {
    // do what you want with the data
  })

getAlbumTracks(id)

Search for all tracks in a specific Album with provided id. Test in Spotify Web Console.

Arguments

Argument Type Options
id string 'Specific id'

Example

getAlbum('4aawyAB9vmqN3uQ7FjRGTy')
  .then(data => {
    // do what you want with the data
  })

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

Thiago Marinho
Thiago Marinho

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE.md file for details