Thinking of building a tool with beets integration


#1

Hello all! My real name is Nicholas and I am not a developer but I do come up with app ideas/concepts and hire out the dev work, usually on upwork.com, so apologies if I can’t get overly technical with such a clearly proficient community.

I have a decentralized music player called JAMS (which made me happy to see the word play of beets when I stumbled across it :smiley:) that was developed for the SAFE Network, not sure if anyone here has heard of it. Currently the network is in alpha stages and the app is in its early days. When a user uploads music, our metadata parser extracts the metadata but it’s become quite clear to me that music is generally not tagged well. Being that there is no music databases on the SAFE Network (yet) and making communications outside of the network would be insecure for the user, this will have to be a client side desktop application.

This tool would be powered by beets (and of course acknowledge that fact). I’m thinking there could be quite a nice UI/UX developed for selecting the import source, setting up a temp folder automatically, ticking some boxes for preselected plugins, etc. and then upload the content to the SAFE Network. I’m thinking it would also be nice have the option to save the changes to disk as well so this tool is useful to more than just JAMS users.

The tool would of course be separate to the player though would be dressed with some JAMS branding. It would be open source rven though the player isn’t (yet). What do you @adrian think of this? What does the community think? Just wanted to feel you guys out first, if this is something that would be welcome, if there are any issues to discuss, and if potentially anyone would want to collaborate?

Cheers everyone.


#2

Sounds interesting! I’m not really familiar with SAFE, but I’d be interested to see how the project goes. IMO, more projects should be using beets as a library. :slight_smile:


#3

Thanks! Great to hear that from you.

Once the songs are all organized and properly tagged by Beets then they would be uploaded to the SAFE Network (decentralized network) and wouldn’t make any calls to outside the network, so this tool will strictly be for proper tagging and organization prior to upload.

I hope this tool can be useful (and intend to make it so) to anyone, regardless if they will be uploading to the SAFE Network.

An interesting aside. The SAFE team (Maidsafe) are working on SoLiD integration (socially linked data) that is the passion project of Sir Tim Berners-Lee which is the underpinning for the semantic web. It could be very interesting to have something like MusicBrainz and Beets on SAFE. Opportunity knocks :wink: This would allow a user to easily migrate their library to any service or even multiple services, amongst other things.

Not to get too off topic or self promote too much but if anyone is interested to know more about JAMS you can check it out here.

I would love to hear from anyone willing to collaborate or any feedback on this idea. Seems I have the blessing of the man himself so I’ll start planning soon!


#4

If I get this right, you simply want a graphical user interface for beets (and maybe a plugin for integration with the SAFE network), right?
Have you seen the web plugin? It has a very limited functionality, but you could use this as an inspiration or even as a basis for your project.
I think the whole beets community (and potential new users who are afraid of the command line) could benefit from a good graphical user interface.


#5

Yes, spot on. It really is pretty simple but I’ve got the flow mapped out in my head to make it almost like a installation wizard, very guided and of course make it nice and pretty :slight_smile:

I still have to investigate how I want to achieve uploading to the SAFE Network. Whether we do it straight from the tool by authenticating (which would still require SAFE’s default browser), and then saving the data with the same schema as the JAMS player uses or by having a simple link that would trigger the SAFE Networks default browser (Peruse) to pop up and open the upload page. I think the former is slightly more user friendly, especially with the way I have the flow figured out. If you’re a SAFE Network user then you already have the browser so not much of a barrier there.

But I agree that a nice GUI would likely be welcome to all and hopefully provide another avenue to those who wish to use Beets but are not up to snuff with CLI’s.

I’ll check out the web interface for inspiration! Thanks for the input!