Skip to content

STRsplit/SoundCrowd

Repository files navigation

Project Name

SoundCrowd - Social jukebox

Team

Table of Contents

  1. Introduction
    1. About
    2. How to Use
  2. Usage
  3. Requirements
  4. Development
    1. Installing Dependencies
    2. Tasks
    3. Built With
  5. Roadmap
  6. Contributing
  7. Acknowledgments

Introduction

About

SoundCrowd - a social jukebox application that extends Spotify's platform enabling multiple users to vote on the track order of a playlist.

Upon signing in, users are presented with a list of their Spotify playlists. Users then select one of their playlists, or use our playlist generator to enable realtime voting on the track order of that playlist. Once the playlist owner is ready to start the first song, a one-click "play" button from the screen initializes the playlist on Spotify and begins reordering the playlist's tracks based on vote count.

Any user with the playlist's custom URL can access the voting system, however, users are limited to one vote per track (voter is able to change their mind once ie if they vote up, but meant down they can edit their vote and vice versa). All users see the tracks reorder to reflect vote count in realtime on their screens and the actual Spotify playlist reorders once every 10 seconds.

Once the current track has finished, the highest voted song is queued up and the prior song is placed back into the voting system with a vote count of 0.

All users can add songs to the playlist using our in-app Spotify search feature. Autocompleted search functionality and filter capability allow users to add songs to the playlist while remain in our application - no back and forth navigation from SoundCrowd to Spotify. A convenient side bar shows users the most recently added and played songs so they are privvy to changes.

SoundCrowd was engineered to help enhance Spotify's already amazing application of which we are all fans and users. Their continued support and extension of their API affords our application a great deal of room to grow. Some of the features we are excited to work on include:

  • Song addition filters set by playlist owner
  • Reverting playlist to original
  • Locking of next song in queue
  • Trending songs showing voting patterns
  • Simpler song change mechanism (Spotify "end of song" hook API addition would make it much simpler)

How to Use

Usage

Requirements

  • Node 6.4
  • Redis 2.6
  • MySQL 2.13

Development

Built With

Additional Technologies

Design:

Testing:

Installing Dependencies

From within the root directory:

npm install
npm start (give it a second to run all tasks)

Roadmap

View the project roadmap here

Contributing

See CONTRIBUTING.md for contribution guidelines.

Acknowledgments

About

Social jukebox for Spotify

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages