Skip to content

RococoCoding/dynamic-playlists

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

129 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dynamic Playlists

🚧 Under Development 🚧

TODOs
  • Big
    • Testing
    • Spotify attributions & branding guidelines
    • complete landing page
    • deploy + ci/cd
  • Med
    • finish error boundaries
    • verify tokens on protected routes instead of just grabbing a possibly expired token from localstorage
    • Support drag n drop for slot positioning
    • Styling on mobile (icons taking up too much space)
    • bugfix: handle key error when adding two of identical slots
    • bugfix: auto update positions when deleting slots copilot spit this out, investigate it ```sql CREATE OR REPLACE FUNCTION update_slot_positions() RETURNS TRIGGER AS $$ BEGIN UPDATE slots SET position = position - 1 WHERE playlistid = OLD.playlistid AND position > OLD.position; RETURN OLD; END; $$ LANGUAGE plpgsql; CREATE TRIGGER update_slot_positions_trigger AFTER DELETE ON slots FOR EACH ROW EXECUTE FUNCTION update_slot_positions(); ```
    • add import playlist
  • Smol
    • tooltips for buttons
    • Scrolling for longer playlists + remove scroll for playlist items
    • Play a specific track in a playlist
    • header nav
    • delete account
    • Are you sure? on delete list / slot
    • validation on forms
    • hide play button until playlist is published -- need a new column in db?

Follow-up Todos:

  • Figure out a better solution for getting out of sync with spotify version of the playlist?
  • Refactor pools
  • add switch to web playback button
  • shuffle & loop controls
  • delete spotify playlist
  • submit feedback form
  • bugifx: "The value provided to Autocomplete is invalid. None of the options match..." error & odd behavior
  • Filters for artist/album/playlist pools
    • exclude compliation albums (default)
    • exclude live/best of albums
    • custom filters (remove songs from pool individually -- gotta think through how this works with updating pools)
  • webplayback progress bar for position in song
  • private playlists
  • playlist descriptions
  • display playlist length
  • display currently selected track on non-track items w/ controls to get a new song
  • multiple albums & artists? (could be solved by adding playback frequency controls)
  • option to update playlist as you go instead of needing to publish?

Description

A Spotify web player where you can design dynamic playlists that autorefresh with new songs as you listen. In a dynamic playlist you can add tracks, which behave normally, or slots, which will rotate between songs from a selection of songs as you listen. Slots can be populated with artists, albums, or playlists. (Support for recommendations is planned but will not be in the initial release.)

Example: List:

  1. Track - "Stained Glass" by Danny Schmidt (plays "Stained Glass" each loop)
  2. Slot - Artist - Hozier (plays a new random song from Hozier's catalog each loop)
  3. Slot - Playlist - Halloween Party (plays a new random song from Halloween Party each loop)

Loop 1

  1. "Stained Glass"
  2. "Take Me to Church"
  3. "Thriller"

Loop 2

  1. "Stained Glass"
  2. "Angel of Small Death and the Codeine Scene"
  3. "Witch Doctor"

About

Spotify app for playlists that automatically refresh with new songs while you listen

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors