# Better Interoperability

**URL:** <https://discourse.beets.io/t/better-interoperability/460>\
**Category:** Help\
**Created:** [August 26, 2018, 8:59pm UTC](https://discourse.beets.io/t/better-interoperability/460 "2018-08-26T20:59:18Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![0xcaff](https://avatars.discourse-cdn.com/v4/letter/0/67e7ee/32.png) [@0xcaff](https://discourse.beets.io/u/0xcaff)\
**Post date:** [August 26, 2018, 8:59pm UTC](https://discourse.beets.io/t/better-interoperability/460/1 "2018-08-26T20:59:18Z")

</div>

Hello beets community,

I’m working on forte, a tool to make personal music collections searchable  
and streamable. [Check out the demo version of the (incomplete) web interface  
using mock data.](http://forte.surge.sh) We plan to add native iOS and Android apps along  
with support for voice assistants like Amazon Alexa and Google Assistant.  
Check out our [github](https://github.com/forte-music) to see our progress (and contribute!).

I was listening to a [podcast](https://www.podcastinit.com/beets-with-adrian-sampson-episode-152/) where @adrian, expressed interest in beets  
being not only a music organizer, but also a tool to access your music from  
other devices. Let’s make this vision a reality. We’d like your thoughts on  
how we can connect beets and forte together.

Beets is awsome. It adds all kinds of fun metadata to audio files like  
musicbrainz identifiers and lyrics. We’d like to integrate with beets for two reasons:

1. Beets can add metadata to music without modifying the original tags by  
storing it in the beets database

2. Beets collects high quality data from many sources.

When we looked at what it would take to [integrate with beets](https://github.com/forte-music/core/issues/36#issuecomment-396017415), we found two pain points:

1. The export plugin doesn’t expose the path of the audio files. There doesn’t  
seem to be be any way to get access to the audio files. Why is this? Are you  
willing to expose it?

2. The field names of the export plugin are implementation details of beets. How  
often do these field names change? Only during major versions?

I think these issues could be easily fixed by us simply writing our own beets  
plugin, but forte seems to solve a problem this project shares. I would really  
appreciate the community’s input on how connecting these two pieces of  
software together could look.

Here’s how I think integration will look:

The user will already have their library managed or indexed by beets. Where  
managed means that beets owns a folder where it has moved all music imported  
into beets and indexed means that beets has only added metadata in its  
database and linked to the original files with their original tags. At some  
point, either automatically or manually, a command is called on the forte cli  
(probably something like `forte sync beets`) with a dump of the current beets  
database. Our code then updates our database to match the data from beets.
