Skip to content

Imanullah/nuxt-musixmatch

Repository files navigation

Musixmatch Module for NuxtJS

npm version npm downloads License

NuxtJS module musixmatch API The simplified NuxtJS module for request Musixmatch API support. Inspire by https://github.com/c0b41/musixmatch. Request are pretty awesome, but I found myself using it into NuxtJS

Also check out here to using the methods that are very similar to request

📖 Release Notes

Setup

  1. Add musixmatch dependency to your project
yarn add musixmatch # or npm install musixmatch
  1. Add musixmatch to the modules section of nuxt.config.js
{
  modules: [
    // Simple usage
    'musixmatch',
    // With options
    ['musixmatch', { /* module options */ }]
  ]
}

Module Options

{
  modules: [
    // Simple usage
    'musixmatch'
  ],
  // With options
  musixmatch: {
    //Required
    apikey: '<Your Musixmatch API Key>'

    //Optional default 'https://api.musixmatch.com/ws/1.1/'
    baseURL: '<Musixmatch API version root URL>'

    //optional default is json
    format: 'json'

    //Optional if you have problem with CORS default is 'https://cors-anywhere.herokuapp.com/'
    //if you want to remove default cors-anywhere you should set value to be ''
    corsURL: ''

    //You can easily integrate to NuxtJS Proxy Module.
    //This is highly recommended to prevent CORS and production/deployment problems.
    //See below simple configuration
    proxyURL: ''
  }
}

Quick Usage

Now you can use all Musixmatch services with $this.musixmatch and followed by method

this.$musixmatch.chartArtists({ page: 1, page_size: 3, country: 'us'}).then(function (res) {
  if (res != null) {
    console.log(res.artist_list)
  }
})

Methods

For more information how to use Methods and Params with example... please refer to https://github.com/c0b41/musixmatch#methods

Basic Example Configuration

  1. Using https://cors-anywhere.herokuapp.com/ to prevent CORS problems
modules: [
  'nuxt-musixmatch'
],

musixmatch: {
  apikey: '<API Key>',
  corsURL: 'https://cors-anywhere.herokuapp.com/'
},
  1. OR integrate to @nuxtjs/axios and Proxy Module to prevent CORS problems
modules: [
  'nuxt-musixmatch',
  '@nuxtjs/axios'
],

musixmatch: {
  apikey: '<API Key>',
  proxyURL: '/api/'
},

axios: {
  proxy: true
},

proxy: {
  '/api/': {
    target: 'https://api.musixmatch.com/ws/1.1/',
    pathRewrite: { '^/api/': '' }
  }
},

License

MIT License

Copyright (c) IMAN

About

Musixmatch NUXT js module API

Resources

License

Stars

Watchers

Forks

Packages

No packages published