/exbrainz

Elixir wrapper for MusicBrainz web service.

Primary LanguageElixirMIT LicenseMIT

Exbrainz

Actions Status

Coverage Status

License

Elixir Client library for MusicBrainz web service.

To understand MusicBrainz terminology better read here.

Installation

If available in Hex, the package can be installed by adding exbrainz to your list of dependencies in mix.exs:

def deps do
  [
    {:exbrainz, "~> 0.1.0"}
  ]
end

Config

MusicBrainz needs User-Agent header for rate-limiting.

config :exbrainz,
  musicbrainz_base_url: "https://musicbrainz.org/ws/2",
  user_agent: "Xbrainz/0.1.0 ( https://github.com/ozgunatacan/exbrainz )"

Usage

micheal_jackson = "f27ec8db-af05-4f36-916e-3d57f91ecf5e"

artist = Exbrainz.get_artist!(micheal_jackson)
artits.aliases

Exbrainz.get_recordings!(micheal_jackson, 1)

works  = Exbrainz.get_works!(micheal_jackson, 1)

work = Works.get_work_by_title(works, "Billy Jean")

Work.get_composer(work) 
Work.get_lyricist(work)