go-librespot
This Go package is an adaption of librespot-golang, which itself is an adaption of a librespot for Rust and librespot-java.
Why this fork?
- Offer essential librespot functionality in Go while departing from the constraints of its predecessor.
- Refactor its predecessor into components that are independent from each other and use standard Go idioms and interfaces.
- Focus on core functionality vs. peripheral functionality. For multiple reasons, peripheral components should consume core functionality, not be embedded alongside it.
I will happily support efforts to merge the work done here with librespot-golang, but it will require the support of others who are in alignment with the whys above. If you are interested in this or contributing to this repo, then please start or join a discussion here.