Created by Dylan Bladen, Jason Fuller, Gabriel Garza, Stormie Renevey, Mason Melead
- Sortify is an app intended to be used in conjunction with Spotify to create personalized playlists tailored to your desired mood and other related song features.
- The app is being created for spotify users who want more options for creating playlists based on music they already have. Songs will be pulled from a user's liked songs in their library rather than finding new music.
- We are creating this app with the intent to provide more customization with creating spotify playlists. This will save spotify users a lot of time and provide new types of playlists for them to listen to.
- MERN
Dylan Bladen
- Scrum 85: React Research
- Scrum 78: Implment Dashboard U/I Skeleton
- Scrum 76: Implement Dashboard Route Guard
- Scrum 67: Design & Mock a dashboard
Stormie Renevey
- Scrum 81: Initialize app by Configuring/Connecting Front & Back End
- Scrum 83: Research MERN Stack Application Deployment
- Scrum 84: Deploy MERN Stack Application (Frontend)
- Scrum 36: Define 'Buckets' for playlist sorting
- Scrum 35: Research Spotify API Song Stats
Gabriel Garza
- Scrum 87: Implement U/I Visual
- Scrum 65: Write a fucntion to store a user's liked songs temporarily
- Scrum 63: Define Architecture for putting songs in data structure
- Scrum 51: Research Spotify API
Jason Fuller
- Scrum 88: Implement Login Page U/I
- Scrum 45: Design a clear and intuitive UI flow for users to start the OAuth process, including button or links to "Connect to Spotify."
- Scrum 44: Implement token refresh logic to ensure the app can maintain access without requiring the user to frequently re-authenticate.
- Scrum 43: Develop the authentication flow in the app, ensuring it meets Spotify's security standards.
- Scrum 42: Research Spotify's OAuth 2.0 implementation documentation.
Mason Melead
- Scrum 77: Define Sortify U/X
- Scrum 74: Define Everything to be Stored in database
- Scrum 64: MongoDB Research
Dylan Bladen
- Scrum 91: Login Page Redirect
- Scrum 112: Import Users icon when they log in
- Scrum 90: Fix route guard on dash board
- Scrum 79: Settings modal base
- Scrum 92: Auto fetch users song on dashboard
- Scrum 114: Access token persists on refresh
- Scrum 120: Intercept 401 Response & create new access token using refresh token
- Scrum 96: Logout Functionality
Stormie Renevey
- Scrum 104: User Tutorial
- Scrum 103: Create and Update Redirect Routes
- Scrum 95: Dashboard Gallery & Card View
- Scrum 93: Loading Bar
Gabriel Garza
- Scrum 118: Testing Expoting of Playlists
- Scrum 105: Expoting generated playlists to spotify
- Scrum 54: Unit Testing of Genres/Songs/Playlists
- Scrum 94: Pull users playlists function (Spotify API)
Jason Fuller
- Scrum 117: Research Open Source U/I Options
- Scrum 97: Login Page U/I Update
- Scrum 99: Create Playlist Page U/I
- Scrum 122: Refactor Login Logic
- Scrum 98: Update Playlist Page U/I
- Scrum 121: UPdate Dashboard Banner
Mason Melead
- Scrum 100: Research Music Sorting Algorithms
- Scrum 101: Implement Music Sorting Algorithms
Dylan Bladen
- Scrum 124: Show more than 20 playlists (set limit to 50)
- Scrum 131: Update dashboard banner
- Scrum 142: Fix liked songs import (only once per login)
- Scrum 126: Create Playlist UI update + view all liked songs
- Scrum 129: Code cleanup
- Scrum 140: Protect other routes with route guard
- Scrum 145: Create playlist show selected songs
- Scrum 146: Misc/artists in playlist table
Stormie Renevey
- Scrum 116: Redeploy App
- Scrum 130: Playlist album images
- Scrum 135: Fix page movement with Tutorial
- Scrum 128: Store user's liked songs when logging in
- Scrum 144: Loading Page Implementation (while songs are being imported)
Gabriel Garza
- Scrum 132: Contact Us From Settings drawer
- Scrum 136: Additional Routes for Creating and Updating playlists
Jason Fuller
- Scrum 127: Create Update pop up
- Scrum 39: Exporting to spotify (button)
- Scrum 37: Cancelling the playlist generation (button)
Mason Melead
- Scrum 137: Integrate Google Analytics
- Scrum 138: Get song feature data and store it
- Scrum 102: Implement Sorting Algorithms
- Scrum 147: Integrate Algorithm into Create Playlist Component
Objectives
- Connect Backend Algorithms to Frontend U/I
- Debug API (Unpreditably Fails to Work Sometimes)
- Extensive Unit Testing of Playlist Generation
- Add Ability to Preview Generated Playlists Before Exporting
- Add "Contact us" Feature
- Fine-tune the entire U/I
Dependencies can be installed via npm install. Use 'npm install --legacy-peer-deps' within the frontend directory.
How does one go about using it? Provide various use cases and code examples here.
Playlist Creation and Updating
Project is: in progress
- Ability to update a playlist
- Alternative solution to storing song data (not in sessionStorage)
- Filters when creating a playlist
- Thanks to Spotify for the information available via their APIs. Their APIs will be utilized throughout this app.