🚀 A Blazor WebAssembly SPA (Single Page Application) in C# that is a client for Spotify and Google Youtube.
The purpose is to provide whatever I think of to make my life easier for using Spotify and Youtube and give this to everyone else too.
The purpose of Spotify is for audio only. The purpose for Youtube Music Vides is audio+video. So keeping this in mind both ways will be implemented. Since I started with figuring out the Spotify API endpoints first this side will be done first. Then everything done Spotify to Youtube will be done Youtube to Spotify.
Blazor Music Client is not meant ever to replace Spotify and Youtube clients or mechanisms to consume music. It is only meant to augment features that are missing.
The following are implemented:
New: Play/Pause functionality. Why this is important is that with Spotify Client open you can see the results for a track search match with a play/pause button next to it which allows you to play the track and select which one you want to add to your Spotify Playlist. Given that each song can have multiple different mixes, remasters, etc.
- List all your Youtube Playlists.
- Upon clicking a Youtube Playlists all the Videos in it are listed.
- The processed title of the Youtube Video is then available in a textbox for editing.
- You can search for the Spotify tracks/songs based on the contents of this text box.
- A list is displayed of the Spotify song title and under it the artists for that song.
- A list of buttons with the title of your Spotify playlist are provided which can be clicked on to add the song to the Spotify playlist.
Next upcoming features:
- You can reorganize the returned list of songs by artists per search on the processed and edited Youtube video title.
- On another page you will be able to search specifically by artist and return all songs on Spotify for that artist.
- Will be able to add any song to any of your paylist(s) via button clicks as per usual.
- Check what metadata about songs is available via the Spotify API endpoints and use that as sort/filters throughout. One metric of particular interest to me is the number of people who have played that track to sort/filter by.
- Add checkboxes or ctrl+click, etc. ways to multiselect and add songs with one click to your Spotify playlist of choice.
Before you run the solution you need to create a Spotify API and GoogleApis Youtube Apps and provide the ClientID, ClientSecret, etc. All of these are strings that go in the Globals class properties.
Detailed instructions with screenshots will be provided for how to:
- Create a Spotify API App in Spotify Developer Portal and get the Client ID and Client Secret. Spotify Instructions
- Create a Google Apis Youtube App in the Google Apis Developer Portal and get the Client ID.
- How to setup all this and the code in Visual Studio Community Edition 2019 (this is what I use).
Akshay Srinivasan
- Twitter: @AkshayS84661920
- Github: @akshays2112
Contributions, issues and feature requests are welcome!
This project is licensed under MIT license.
Give a ⭐️ if this project helped you!