Spotify: Track - Discovery / Go to song radio / Recommendations
Maintainers usually reply within 6 days
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 32/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- go
- Domain
- audio-video-rtc, cli
Research direction
Start by reading the existing Spotify integration and the CLI's track-discovery and playback entry points; those files are not identified in the issue, so first locate them in the repository. Check which Spotify APIs are available with the project's own client ID and how the current player queues and shuffles tracks. Done means a user can discover similar music or an artist's top hits and play the resulting recommendations, with an agreed fallback for own-client users.
Written by the indexing model from the issue text.
Description
Problem
I use the "Go to song radio" feature inside the native Spotify client very much. I use it for inspiration, getting exposed to new music.
Proposal
Based on different conversations, where we might run with a different client id, that puts us in the "Extended Quota Mode" - we might be able to use some of the apis, that otherwise is missing.
But I would like to have a fall back implementation, that does a fair job for users, that runs the own client id.
Mockups / references
Track playing:
Andrew Galaxy - Your Body · Your Body
Track Info:
── Track Info ──────────────────────────────────────────────────────────────────────
Title: Your Body
Artist: Andrew Galaxy
Album: Your Body
Year: 2026
Track: 1
Path: spotify:track:5YAps93C2Iyrh0SxKMlUoZ
User does D (upper case):
── Dissover──────────────────────────────────────────────────────────────────────
1. Discover: more like this
2. Discover: artist top hits
User selects 1. Discover: more like this
flowchart LR
A[1. What's playing?<br/>Your Body - Andrew Galaxy] --> B[2. What's the style?<br/>Look up the artist -> e.g. House]
B --> C[3. Find 50 songs in that style<br/>from lots of different artists]
C --> D[Shuffle & Play]
I'm willing to take a swing at it - if someone can guide me in terms of it makes sense for cliamp and the vision there is for it.
- Dominant language
- Go
- Stars
- 4.4k
- Forks
- 307
- Avg merge
- 3d 6h
- Merged PRs (30d)
- 26
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- No contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from bjarneo/cliamp
-
bug
Difficulty 1/5 Under an hour Newbie friendliness 92/100
Maintainers usually reply within 6 days
-
Show the Podcast episodes in newest first orderPossibly taken @lchojnack claimed this 9 days ago. Openenhancement
Difficulty 2/5 1-3 hours Newbie friendliness 69/100
Maintainers usually reply within 6 days
-
No "Open YouTube Music provider" action (unlike every other provider)Possibly taken @yunaremaia claimed this 4 days ago. Openbug
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
Maintainers usually reply within 6 days
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
bjarneo/cliamp#520 · 2 reactions ·
Maintainers usually reply within 6 days
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
Maintainers usually reply within 6 days
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
nebari-dev/nebi#630 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
router-for-me/CLIProxyAPI#7084 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
speakeasy-api/openapi#284 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
yetone/magpie#4095 · 1 comment ·
Maintainers usually reply within 1 day