const EleventyFetch = require('@11ty/eleventy-fetch') module.exports = async function () { const MUSIC_KEY = process.env.API_KEY_LASTFM const url = `https://ws.audioscrobbler.com/2.0/?method=user.gettopartists&user=cdrn_&api_key=${MUSIC_KEY}&limit=8&format=json&period=7day` const res = EleventyFetch(url, { duration: '1h', type: 'json', }).catch() const data = await res return data['topartists']['artist'].map((artist) => { return { title: artist['name'], plays: artist['playcount'], rank: artist['@attr']['rank'], image: `https://cdn.coryd.dev/artists/${artist['name'].replace(/\s+/g, '-').toLowerCase()}.jpg` || 'https://cdn.coryd.dev/artists/missing-artist.jpg', url: artist['mbid'] ? `https://musicbrainz.org/artist/${artist['mbid']}` : `https://musicbrainz.org/search?query=${encodeURI(artist['name'])}&type=artist`, type: 'artist', } }) }