Skip to content

Avoteio/avoteio

Repository files navigation

Avoteio

Avoteio is a cloud-supported, mobile-ready, React-powered, Spotify-based song voting app. Users can use spotify-premium accounts to create and host rooms. Rooms are accessible through the url generated by the creation of a room. Upon entering a room, users can add, upvote, and downvote existing songs; the songs will be played through the host's spotify account.

Getting Started

Prerequisites

Avoteio requires Node.js v4+ to run.

Installation

Install the dependencies and devDependencies and start the server.

$ cd avoteio
$ npm install

Create your database by running mysql -u root -p < schema.sql from the root folder

Start the server in its own terminal $npm run server-dev

In a separate terminal run the client $npm run react-dev

Spotify Setup

  • Create a Spotify Developer Account
  • Create a new app
  • Add your SPOTIFY_CLIENT_ID and SPOTIFY_CLIENT_SECRET to your .env file and deployment environment
  • Navigate to 'Edit Settings' in your developer account to whitelist your redirect uri

Tech

Avoteio uses a number of open source projects to work properly:

  • React.js - Facebook's front-end framework
  • React Router - Declarative routing for React
  • node.js - evented I/O for the backend
  • Express - node.js framework [@tjholowaychuk]
  • Passport - Handling for Spotify authorization (OAuth)
  • Socket.Io - Handle real-time voting and song addition using sockets.

License

MIT

Authors

About

the world's best voting app

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors