https://musikalee.herokuapp.com/
cd ~/environment && git clone https://github.com/NJIT-CS490/musikalee && cd musikalee- Install your stuff!
a)npm install && npm install -g webpack && npm install --save-dev webpack && npm install socket.io-client --save && sudo pip install requests
pip install flask-socketio⚠️ ⚠️ ⚠️ If you see any error messages, make sure you usesudo piporsudo npm. If it says "pip cannot be found", runwhich pipand usesudo [path to pip from which pip] install⚠️ ⚠️ ⚠️
- Install PostGreSQL:
sudo yum install postgresql postgresql-server postgresql-devel postgresql-contrib postgresql-docs
Enter yes to all prompts. - Initialize PSQL database:
sudo service postgresql initdb - Start PSQL:
sudo service postgresql start - Make a new superuser:
sudo -u postgres createuser --superuser $USER
If you get an error saying "could not change directory", that's okay! It worked! - Make a new database:
sudo -u postgres createdb $USER
If you get an error saying "could not change directory", that's okay! It worked! - Make sure your user shows up:
a)psql
b)\dulook for ec2-user as a user
c)\llook for ec2-user as a database - Make a new user:
a)psql(if you already quit out of psql)
b) Type this with a new unique password:
create user some_username_here superuser password 'some_unique_new_password_here';
c)\qto quit out of sql
- Update yum:
sudo yum update, and enter yes to all prompts - Get psycopg2:
pip install psycopg2-binary - Get SQLAlchemy:
pip install Flask-SQLAlchemy==2.1 - Get Dot-Env:
pip install python-dotenv - Make a new file called
sql.envand addDATABASE_URL='postgresql://{username_here}:{password_here}@localhost/postgres'in it
There's a special file that you need to enable your db admin password to work for:
- Open the file in vim:
sudo vim $(psql -c "show hba_file;" | grep pg_hba.conf) - Replace all values of
identwithtrustin Vim::%s/ident/trust/g - After changing those lines, run
sudo service postgresql restart - Ensure that
sql.envhas the username/password of the superuser you created!
- Run
sudo service postgresql start && python - In the python interactive shell, run:
import modelsmodels.DB.create_all()models.DB.session.commit()
- Run
npm install --save react-router-dom && npm install react-spotify-login && npm install react-collapsible --save && npm install --save react-tabs - Install Bootstrap
npm install react-bootstrap@1.0.1 - Run
pip install timeago
npm i react-spotify-login
- Navigate to https://developer.spotify.com/dashboard/login and sign up or login
- Go to your dashboard and create a project (any appropriate title/description is fine)
- Click on the project to see your Client ID and Client Secret
- Under your main directory create a file called
spotify.envand populate it as follows:
SPOTIFY_CLIENT_ID={your client id here}
SPOTIFY_CLIENT_SECRET={your client secret here}
*note the lack of quotes
#Set up TicketMaster
- Nagivate to https://developer.ticketmaster.com/ and sign up for an account
- Go to your apps dashboard and copy your Consumer Key
- Under your main directory create a file called
ticketmaster.envand populate it as follows:
TICKETMASTER_API_KEY='{your consumer key}'
- Justin Chow
1. Added login through spotify
2. Got user data from spotify
3. Got user's top artists from spotify
- Catarina DeMatos
1. Created models for Posts, Comments, Likes, Users
2. Users can interact with posts on the timeline by commenting or liking
3. The Navigation sidebar takes you to the timeline, user profile, and messaging tab.
_________________
Incompleted:
1. I should be able to visit other people's profile pages by clicking their username on their post.
- Dhvani Mistry
1. Got Recommended and Trending songs from Spotify and displayed on right side bar.
2. Created status bar to input text and song & artist (saves input to db and displays on timeline with username and pfp).
3. Get song information from spotify to display album art and audio preview.
_________________
Incompleted:
1. Better styling for timeline (sometimes song overlaps with posts)
- Joseph Cayemitte
1. Users can see there own profile stats (what they're listening too, who's following them, etc)
2. Got what the user is currently listening to
3. Got the name of the user's top 3 Artists
___________________________
Incompleted:
1. Users should be seperated into 2 different catagories: Listen(users) or Artists
2. Follow button