Brook offers a variety of tools for YouTube and Spotify.
- Download tracks and entire playlists from YouTube and Spotify
- Saved playlists track any changes made to the playlist (e.g. added/removed tracks, name change, thumbnail change etc.)
- When saved playlists are "updated", a zip file containing any new tracks are downloaded.
- Convert (transfer) your playlists between music streaming services
- Refactor database so tracks have a many-to-many relationship with playlists instead of Foreign Key (saves database space)
- Add a download ETA to toast
- Disable queueing more downloads as one is occurring
- Implement "Public playlists" page, where users can opt to share their saved playlists publically
- Fork this repository
- Create a
.env
file in theclient
root directory and add the following:VITE_API_URL=http://127.0.0.1:8000
VITE_AWS_ACCESS_KEY_ID=<your aws access key id>
VITE_AWS_SECRET_ACCESS_KEY=<your aws secret access key>
VITE_SPOTIFY_CLIENT_ID=<your spotify client id>
- Create a
.env
file in theserver
root directory and add the following:DJANGO_DEBUG=1
YOUTUBE_API_KEY=<your youtube data api key>
SPOTIFY_CLIENT_ID=<your spotify client id>
SPOTIFY_CLIENT_SECRET<your spotify client secret
AWS_ACCESS_KEY_ID=<your aws access key id>
AWS_SECRET_ACCESS_KEY=<your aws secret access key>
USE_SQLITE=1
- In your terminal,
cd
intoBrook/client
and run the following:npm install
npm run dev
- In another terminal window,
cd
intoBrook/server
and run the following:pip install -r requirements.txt
python manage.py migrate
python manage.py runserver 127.0.0.1:8000
- Create a pull request after making your changes