I’d like to see it become much easier to integrate MusicBrainz (MB) information with a website. This would make MB much more useful to people (especially musicians). I know there is a an API for developers, but even myself as a website developer, find it very difficult to understand, let alone implement. This is how I envisage it working better…
-
Add a single link to the MB API libraries in a website
<head>
section, eg.
<?php include("./mb/mb_api_v2.php"); >
-
Add a line of PHP in my HTML that displays what I want, eg.
<?php mb-showReleases() ?>
And that’s as simple as it should be. The API library includes some default MB IDs, and the resulting HTML is fairly basic, but includes sufficient CSS classes for theming. Overriding should be as simple as:
<?php
$mb-releasefields[]="date","title";
$mb-releases-excluded[]="mbid1, mbid6";
$mb-releases-buypreference[]="amazon, itunes";
mb-showReleases() ?>
Motivation
Most musicians currently show their releases, recordings and works on their website, but it is tedious to maintain, and having to duplicate their efforts on their site, MusicBrainz, and elsewhere is a disincentive. And most Musicians can’t do HTML.
But if a musician knew that by just updating their MusicBrainz pages, the results would automatically appear on their site, everyone wins.
Technical
- I think a single line on the header is all that is required to bring in additional PHP, JS and CSS.
- I believe the API also handles caching, so a
/cache
folder may be required with the right permissions. - The basic output should be just that, basic. But there is no reason why it can’t be extensible, configurable, and even dynamic (with Ajax calls).