sanic/NOTES.md
2024-04-29 00:14:39 +02:00

2.4 KiB
Raw Permalink Blame History

features

frontend

  • Ribbon menu
    • Show mpd connection state
    • Display config dialog (is this even needed?)
    • Update DB button
      • Disable if running update is detected
    • Previous Track button
    • Next Track button
    • Stop button
    • Play button
      • Pause button
    • Track seeker
    • Repeat toggle
    • Shuffle toggle
    • xfade
      • decrease
      • increase
    • Volume
      • increase
      • decrease
      • set with bar
    • Now playing
      • shows current track
      • marquee effect
    • Time
  • Queue
    • Show queue
    • Highlight current track
    • Move track up
    • Move track down
    • Remove track
    • Clear queue button?
  • File browser
    • List all directories
    • Selected folder has different icon (📂 vs 📁)
    • Folders with subfolders have a or sign
    • Clicked folders contents are displayed in the results
    • Select tracks in results
    • Add selected tracks to queue button
  • Search
    • Search files results
    • Select tracks in results
    • Add selected tracks to queue button
  • Playlist browser
    • Show current playlists
    • Replace current queue with playlist button
    • Attach playlist to current queue button
    • Save current queue as playlist button
      • Show dialog
    • Delete selected playlist button

backend

  • Websocket
    • #status requests mpd infos:
      • status
      • currentsong
      • playlistinfo (queue)
    • #download requests download of URL (yt-dlp)
      • TBA
  • API endpoints
    • GET /api/update_db
    • GET /api/previous_track
    • GET /api/next_track
    • GET /api/stop
    • GET /api/play
    • GET /api/pause
    • GET /api/seek/:seconds
    • GET /api/repeat
    • GET /api/random
    • GET /api/volume/:level
    • /api/xfade/:seconds
    • /api/queue_clear
    • POST /api/queue {"song_id": 123}
    • GET /api/queue/:song_id/delete
    • GET /api/queue/:song_id/move/:position
    • GET /api/queue/replace/:playlist_name
    • GET /api/queue/attach/:playlist_name
    • GET /api/database/:path
    • GET /api/playlists
    • POST /api/playlists/:name
    • GET /api/playlists/:name
    • DELETE /api/playlists/:name