Songwall

Development Updates

V. 1.3 - Update Release

Posted on: July 5, 2025

Minor tweaks to the recommendation algorithim made with this update, also added the social handle for X for songwall. I do see I have some active users now without advertising - so I went ahead and tweaked the algorithim to provide better recs using slightly different weights and better time decay variables. - Cody R

V. 1.2 - Huge Update Release

Posted on: March 4, 2025

This is it! The revamped, upgraded, and polished version of Songwall is here! I have completely restyled the stylesheet and some of the HTML with help from the new Claude 3.7. I also have implemented my v1 of a recommendation algorithim, we have weighted various information we store from the user as they browse the site. This algorithim combines content-based filtering with collaborative filtering, popularity-based filtering, and time-decay weigthing (to ensure recommendations stay fresh). The most impactful being their ratings - which affect heavily our artist weight. The second highest being general popular songs on songwall (for now). The third highest weight is our view history by user, if a user views a song multiple times we will weigh this view higher (but more than 5 views will begin to have less impact). All of the scores are normalized and as time goes on the system will naturally reduce the impact of older views/ratings. The system lastely weighs social information (the recommendations of those a user follows are very slightly weighed into the algorithim). The system first analyzes user ratings, viewing paterns, and social connections. Next applying our weights to each factor, 60% artist preference, 20% popularity, 10% view history, 5% album preference, and 5% social. It then uses exponential time decay to prioritize the recent activity over older, balances the artist selection in the recommendations by limiting the amount of song recommendations per artist (prevents one artist from dominating), filtering out duplicate songs, and lastly normalizes the scores to ensure fair comparison across all recommendation sources. This system can be changes in the future to have different weights as the user base grows, but is adequate for a small starting user-base. Now we have a product I am 'semi' happy with... still thinking of more to add. - Cody R

V. 1.1 - Semi-Update Release

Posted on: February 21, 2025

I have been making some very minor changes prior to this blog post, but I will touch on everything new I have added and explain some of how I did so! First of all, I have added popular songs by genre in the user dashboard using the spotify search endpoint (their old endpoint is no longer supported so I had to get creative). I gather the top 20 results and then order them by each songs popularity ratings from spotify and return them to the dashboard for the user to see. I also added pinned songs, this is cleanly displayed on the user profile. I did this a bit earlier, but suggested songs based songs in our database from the same artist is now in the user dashboard. Nothing crazy added in this version, but its overall coming together a bit more: the next version I have an idea for a recommendation system that I haven't seen before and will be a huge use-case for my project... - Cody R

V. 1.0 - Initial Release

Posted on: February 6, 2025

The first version of the app is now live! This version is a very rough around the edges and in development prototype. I designed it to have searching, rating, posting, and viewing functionality. Users can search for songs using the spotify api integration, rate these songs which will add it to the recent ratings feed as well as followers feeds, and then post about these songs optionally. The next version of this app will include some big updates that will integrate ML for recommendations as well as further spotify api use. This app provides its base functionality and is neat (for now...), it will soon have the very cool features. - Cody R