Come jam with your friends with synchonized Spotify music!
Demo Build: Demo
Make sure to install Redux Dev Tools for time-travel and debugging: Chrome Dev Tools
Tools:
cd /spotifyjam/
- yarn (install)
- yarn dev (run)
- npm install -g firebase-tools
- firebase login
- yarn build (production build)
- Remove sourcemap (two ways) either: a. delete the .map b. export GENERATE_SOURCEMAP=false
- firebase deploy
1. Install [Heroku CLI](https://devcenter.heroku.com/articles/heroku-cli)
2. heroku login
3. heroku git:clone -a spotify-jam
server
- cd spotify-jam
- npm install
- node server
client
- cd spotify-jam
- node test-client.js
Commands (use ">help" for help)
- available
- create test-room
- join test-room
- send hello!
- Commit and push (master)
- heroku logs --tail
- git pull origin master
- export PROJECT_ID="$(gcloud config get-value project -q)"
- vi Dockerfile //Edit any build directives
- docker build -t gcr.io/${PROJECT*ID}/(docker-proj-name):(docker-tag) . *//(docker-proj-name) = spotifyjam_
- gcloud docker -- push gcr.io/${PROJECT*ID}/(docker-proj-name):(docker-tag) *//push docker build to gcloud_
- //(port-no) should match the port the server uses, (service-name) = spotifyjam-backend
- gcloud container clusters get-credentials (service-name) --zone us-central1-a --project ${PROJECT_ID}
- kubectl run (service-name) --image=gcr.io/${PROJECT_ID}/(docker-proj-name):(docker-tag) --port (port-no)
- kubectl set image deployment/(service-name) (service-name)=gcr.io/${PROJECT_ID}/(docker-proj-name):(docker-tag)
- kubectl expose deployment (service-name) --type=LoadBalancer --port (port-no) --target-port (user-port) //(user-port) should match the port the client uses
(frontend) yarn remove "package-name"
- rm -rf node_modules
- npm cache clean
- yarn (reinstall)
- React
- React-Redux
- React-Router-Dom
- Redux-Thunk
- React-Router-Redux
- Redux-Persist
- Reselect
- Node with OOP (User/Room Classes)
- Socket.io
- Socket.io Middleware
- Spotify-Web-API-js
- Firebase Hosting
- Google Cloud Kubernetes
- Ant.d UI Library