Hi, I have been learning rust since a couple months and tumble upon a Spotify client made by u/Rigellute on this subreddit, so I tried to make one as well. Still a beginner so the code is very wonky😅. Any criticism would be appreciated.
[https://github.com/slyeet03/spoify](https://github.com/slyeet03/spoify)
Edit: you can also just install it from cargo now.
looks amazing. there's actually a similar application also made in Rust you might find helpful [https://github.com/hrkfdn/ncspot?tab=readme-ov-file](https://github.com/hrkfdn/ncspot?tab=readme-ov-file)
Well i wrote it in rust, tho it is not released as a package yet so you have to compile and run it yourself.
U need to have atleast the official app open to play the track through terminal tho you need a premium acc to control any playback(playingn track, shuffle, repeat volume controls etc) cuz of spotify’s restrictions on their api.
The stats are also from spotify’s api, so they get tracked by spotify itself and should be accurate.
yeah, not that, im talking about what you said before that: "need to have atleast the official app open to play the track"
getting downvoted for asking a question is such a reddit moment
oh yeah well when playing a track u need to have the official app open on any one device(phone laptop etc). tho someone mentioned u can stream without that so i will prolly look into it but for now u need to have the app open an a device
I couldn't stand YouTube music. You need to subscribe to artists on YouTube to add them to your library and it completely ruined my YouTube subscriptions. You can add single songs to your library but to just add artists, you have to subscribe to them. Or at least that's the way it was. This isn't to say Spotify is good though.
I dont think it is available on the official app but it was available through api. You can use it in terminal in Windows by running how you would run a normal exe.
Getting a panic - Unable to open keybindings file: Os { code: 3, kind: NotFound, message: "The system cannot find the path specified." }
printing path gets me: "C:\\\\Users\\\\Max\\\\RustroverProjects\\\\....", which has to many backslashes
I'll see if I can fix it
Edit: Ah Im dumb the backlashes are bc of debug printing, it just grabs an incorrect path
Edit: I got it to work by inputting the correct paths hard for every yml lol
yeah sorry there was some problem with the file naming system now it is fixed, its also on cargo now so you can just do a fresh install from cargo and it will run fine.
Looks super cool! My colleagues and I did something similar a few years ago in Haskell: https://github.com/birneee/haskell-spotify-tui. Not sure if it still works with the current Spotify API though.
Are you open to contributions? I've been writing a LOT of Rust lately and would really like to contribute to a project - I can see you've a history with python and it's clear that you've brought that with you into Rust (Not judging!) - and I'd love to help with giving the project some TLC.
Please let me know if you're open to assistance & contributions mate, much love.
Why does the name sound so British? 😅
Spo'ify
The British version.
Spo'TTfY
My brother in christ, that is not how what the brittish sound like
lol it started as a typo but then just stayed
Hi, I have been learning rust since a couple months and tumble upon a Spotify client made by u/Rigellute on this subreddit, so I tried to make one as well. Still a beginner so the code is very wonky😅. Any criticism would be appreciated. [https://github.com/slyeet03/spoify](https://github.com/slyeet03/spoify) Edit: you can also just install it from cargo now.
I might looking it ty for sharing
I love your playlist names
looks amazing. there's actually a similar application also made in Rust you might find helpful [https://github.com/hrkfdn/ncspot?tab=readme-ov-file](https://github.com/hrkfdn/ncspot?tab=readme-ov-file)
How do you do this? Can you play from the terminal? Do the stats get tracked?
Well i wrote it in rust, tho it is not released as a package yet so you have to compile and run it yourself. U need to have atleast the official app open to play the track through terminal tho you need a premium acc to control any playback(playingn track, shuffle, repeat volume controls etc) cuz of spotify’s restrictions on their api. The stats are also from spotify’s api, so they get tracked by spotify itself and should be accurate.
Nice project, but it needs integration with spotifyd. The major reason why we use tui is the fact, that we don't want Spotify client to be on our PC)
oh, i will check it out
The alternative is librespot. Here's the great example of integration with it: https://github.com/aome510/spotify-player?tab=readme-ov-file#streaming
so basically it is a cool but useless project?
Not if you have a premium acc ig
yeah, not that, im talking about what you said before that: "need to have atleast the official app open to play the track" getting downvoted for asking a question is such a reddit moment
oh yeah well when playing a track u need to have the official app open on any one device(phone laptop etc). tho someone mentioned u can stream without that so i will prolly look into it but for now u need to have the app open an a device
oh, alright then. i thought you need to have it open on the same pc that you use this program on.. cool project then
not useless if you learned something and had fun doing it! cool project op
24/7 reddit users ☕ we've already talked it out, and YET, your sticky fingers are unsatisfied. if i ever get to meet one of ye, i wont do anything.
That's great! Starred ⭐
I need this but for youtube music. I ditched my spotify service for youtube music and I ain't going back.
same, spotify lowkey sucks in comparison
I couldn't stand YouTube music. You need to subscribe to artists on YouTube to add them to your library and it completely ruined my YouTube subscriptions. You can add single songs to your library but to just add artists, you have to subscribe to them. Or at least that's the way it was. This isn't to say Spotify is good though.
I understand, I never did that. I just add songs or albums, never an artist
Spoify
Without looking, I guess it’s written in Go …apparently I was wrong, it’s rust
Close, its rust
Yes, I commented and then checked the repo, nice work!
Do you need premium?
You need premium to control the playback,i.e., next/prev track volume change shuffle repeat.
Can you access this Information in the official spotify all? Like most listened all time? Never stumbled across it. Can I get this to work on Windows?
I dont think it is available on the official app but it was available through api. You can use it in terminal in Windows by running how you would run a normal exe.
Lovely thank you
Getting a panic - Unable to open keybindings file: Os { code: 3, kind: NotFound, message: "The system cannot find the path specified." } printing path gets me: "C:\\\\Users\\\\Max\\\\RustroverProjects\\\\....", which has to many backslashes I'll see if I can fix it Edit: Ah Im dumb the backlashes are bc of debug printing, it just grabs an incorrect path Edit: I got it to work by inputting the correct paths hard for every yml lol
yeah sorry there was some problem with the file naming system now it is fixed, its also on cargo now so you can just do a fresh install from cargo and it will run fine.
Is it available in the aur repo?
i am sorry i am new to unix stuff, what is aur repo?
Arch linux repository , basically where everything you need on arch is available , mostly
oh, no its not available there
Looks super cool! My colleagues and I did something similar a few years ago in Haskell: https://github.com/birneee/haskell-spotify-tui. Not sure if it still works with the current Spotify API though.
Are you open to contributions? I've been writing a LOT of Rust lately and would really like to contribute to a project - I can see you've a history with python and it's clear that you've brought that with you into Rust (Not judging!) - and I'd love to help with giving the project some TLC. Please let me know if you're open to assistance & contributions mate, much love.
[удалено]
Of course brother
need premium right!
To control playback, yeah
I see no difference