/spotify-wrapper

A library to work with Spotify API :notes:

Primary LanguageJavaScriptMIT LicenseMIT

spotify-wrapper

Build Status Coverage Status Codacy Badge contributions welcome Bugs The MIT License

A wrapper to work with the follow API:

Spotify Web API

Airbnb Style Guide

Browser Support

This library relies on Fetch API. And this project 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-web --save

How to use

ES6

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

// To import everything
import * as spotifyWrapperWeb from 'spotify-wrapper-web';

CommonJS

var spotifyWrapperWeb = require('spotify-wrapper-web');

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 as example:

const spotify = new SpotifyWrapper({
  token: 'YOUR_TOKEN_HERE'
});

const albums = spotify.search.albums('Choosen Artist');

Methods

Follow the methods that the library provides.

search.albums(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

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

search.artists(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

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

search.tracks(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

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

search.playlists(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

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

album.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

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

album.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

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

album.getTracks(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

spotify.album.getTracks('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

Gabriel Hahn Schaeffer | Willian Justen (Teacher)

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

License

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