Code Monkey home page Code Monkey logo

react-spotify-album-player's Introduction

Spotify Player

This is a simple spotify player for a single album of a given artist.

install

Bower:

bower install react-spotify-album-player

For bower usage,

<script src="path/to/react.js"></script>
<script src="path/to/react-spotify-album-player/dist/react-spotify-album-player.js"></script>

NPM:

npm install react-spotify-album-player

Demo

https://devilcius.github.io/react-spotify-album-player/

Basic Usage

var React = require('react');
var SpotifyPlayer = require('react-spotify-album-player');
var container = document.getElementById('spotify-player');
var ReactDOM = require('react-dom');
ReactDOM.render(
    <SpotifyPlayer
        albumName="Milo Goes to College"
        artistName="Descendents"
        noDataFoundText="No data found"
        previewWarningText="Only 20 seconds preview"
        showHeader
        token
 />,
    container
);

Required options:

Property Type Description
albumName string Release's name
artistName string Artist's name
token string A valid spotify web api access token

Further options:

Property Type Default Description
listGroupItemBadgeClassName string 'badge' class name for badge element
listGroupClassName string 'list-group' class name for list group element
listGroupItemClassName string 'list-group-item' class name for list group item element
onTrackPlayed func undefined track played handler: function(audioTrack, spotifyTrack) {}
onTrackPaused func undefined track paused handler: function(audioTrack, spotifyTrack) {}
noDataFoundText string No data found placeholder displayed when there are no matching search results values
previewWarningText string Only 20 seconds preview placeholder preview audio file warning
showHeader bool false whether to show player header

Development

Local development is separated into two parts (ideally using two tabs).

First, run rollup to watch your src/ module and automatically recompile it into dist/ whenever you make changes.

npm start # runs rollup with watch flag

The second part will be running the example/ create-react-app that's linked to the local version of your module.

# (in another tab)
cd example
npm start # runs create-react-app dev server

Now, anytime you make a change to your library in src/ or to the example app's example/src, create-react-app will live-reload your local dev server so you can iterate on your component in real-time.

Publishing to npm

npm publish

This builds cjs and es versions of your module to dist/ and then publishes your module to npm.

Make sure that any npm modules you want as peer dependencies are properly marked as peerDependencies in package.json. The rollup config will automatically recognize them as peers and not try to bundle them in your module.

Deploying to Github Pages

npm run deploy

This creates a production build of the example create-react-app that showcases your library and then runs gh-pages to deploy the resulting bundle.

Todo

  • Sanity checks in xhr calls
  • Error handling in xhr calls

License

MIT © devilcius

react-spotify-album-player's People

Contributors

dependabot[bot] avatar devilcius avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.