https://github.com/gsabadini/spotify-wrapper
A javascript wrapper library to work with the Spotify API. Built to study unit tests with the Chai and Sinon tools.
https://github.com/gsabadini/spotify-wrapper
nodejs spotify-api spotify-wrapper vue
Last synced: about 2 months ago
JSON representation
A javascript wrapper library to work with the Spotify API. Built to study unit tests with the Chai and Sinon tools.
- Host: GitHub
- URL: https://github.com/gsabadini/spotify-wrapper
- Owner: GSabadini
- License: mit
- Created: 2019-01-07T18:49:07.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2019-01-09T19:50:18.000Z (over 7 years ago)
- Last Synced: 2025-02-25T04:12:35.995Z (over 1 year ago)
- Topics: nodejs, spotify-api, spotify-wrapper, vue
- Language: JavaScript
- Homepage:
- Size: 172 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Spotify Wrapper
[](https://travis-ci.com/GSabadini/spotify-wrapper) [](https://coveralls.io/github/GSabadini/spotify-wrapper?branch=master) [](https://scrutinizer-ci.com/g/GSabadini/spotify-wrapper/?branch=master)
A wrapper to work with the [Spotify Web API](https://developer.spotify.com/web-api/).
## Browser Support
This library relies on [Fetch API](https://fetch.spec.whatwg.org/). And this API is supported in the following browsers.
 |  |  |  |  |
--- | --- | --- | --- | --- |
39+ ✔ | 42+ ✔ | 29+ ✔ | 10.1+ ✔ | Nope ✘ |
## Dependencies
This library depends on [fetch](https://fetch.spec.whatwg.org/) to make requests to the Spotify Web API. For environments that don't support fetch, you'll need to provide a [polyfill](https://github.com/github/fetch) to browser or [polyfill](https://github.com/bitinn/node-fetch) to Node.
## How to use
### ES6
```js
// to import a specific method
import SpotifyWrapper from 'spotify-wrapper';
const spotify = new SpotifyWrapper({
token: 'YOUR_TOKEN_HERE'
});
// using method
spotify.search.artists('Incubus');
```
### CommonJS
```js
const SpotifyWrapper = require('spotify-wrapper').default;
const spotify = new SpotifyWrapper({
token: 'YOUR_TOKEN_HERE'
});
```
### UMD in Browser
```html
```
After that the library will be available to the Global as `SpotifyWrapper`. Follow an example:
```js
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](https://developer.spotify.com/web-api/console/get-search-item/) with type defined as *album*.
**Arguments**
| Argument | Type | Options |
|----------|---------|-------------------|
|`query` |*string* | 'Any search query'|
**Example**
```js
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](https://developer.spotify.com/web-api/console/get-search-item/) with type defined as *artist*.
**Arguments**
| Argument | Type | Options |
|----------|---------|-------------------|
|`query` |*string* | 'Any search query'|
**Example**
```js
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](https://developer.spotify.com/web-api/console/get-search-item/) with type defined as *track*.
**Arguments**
| Argument | Type | Options |
|----------|---------|-------------------|
|`query` |*string* | 'Any search query'|
**Example**
```js
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](https://developer.spotify.com/web-api/console/get-search-item/) with type defined as *playlist*.
**Arguments**
| Argument | Type | Options |
|----------|---------|-------------------|
|`query` |*string* | 'Any search query'|
**Example**
```js
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](https://developer.spotify.com/web-api/console/get-album/).
**Arguments**
| Argument | Type | Options |
|----------|---------|-------------------|
|`id` |*string* | 'Specific id'|
**Example**
```js
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](https://developer.spotify.com/web-api/console/get-several-albums/).
**Arguments**
| Argument | Type | Options |
|----------|---------|-------------------|
|`ids` |*Array of strings* | ['id1', 'id2']|
**Example**
```js
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](https://developer.spotify.com/web-api/console/get-album-tracks/).
**Arguments**
| Argument | Type | Options |
|----------|---------|-------------------|
|`id` |*string* | 'Specific id'|
**Example**
```js
spotify.album.getTracks('4aawyAB9vmqN3uQ7FjRGTy')
.then(data => {
// do what you want with the data
})
```
## Contributing
Please read [CONTRIBUTING.md](https://gist.github.com/PurpleBooth/b24679402957c63ec426) for details on our code of conduct, and the process for submitting pull requests to us.
## Versioning
We use [SemVer](http://semver.org/) for versioning. For the versions available, see the [tags on this repository](https://github.com/your/project/tags).
## Authors
| |
|:---------------------:|
| [Gabriel Facina](https://github.com/GSabadini/) |
See also the list of [contributors](https://github.com/GSabadini/spotify-wrapper/contributors) who participated in this project.
## License
This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details