From 7ed7391f7159150e48eaef9ea452b351c2db0e2d Mon Sep 17 00:00:00 2001 From: William Santos Date: Wed, 23 Feb 2022 00:08:57 -0300 Subject: [PATCH] :pencil: Kiss Me Deadly by Gen X --- covers/gen-x--kiss-me-deadly.png | Bin 0 -> 28172 bytes css/listened-albums.css | 72 ++- index.html | 186 ++++---- js/data/2019.json | 437 +++++++++-------- js/data/2020.json | 773 +++++++++++++++---------------- js/data/2021.json | 740 +++++++++++++++-------------- js/data/2022.json | 92 ++-- js/listened-albums.js | 156 +++---- 8 files changed, 1259 insertions(+), 1197 deletions(-) create mode 100644 covers/gen-x--kiss-me-deadly.png diff --git a/covers/gen-x--kiss-me-deadly.png b/covers/gen-x--kiss-me-deadly.png new file mode 100644 index 0000000000000000000000000000000000000000..d5671b03f32e446778f7edd2d45b8f741c1b48b8 GIT binary patch literal 28172 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

Prec@%qj22hAFu!}|XS{Yg+CvT;t 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 option { +input, +select, +select > option { background: linear-gradient(to right, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 1)); - background-color:rgba(0, 0, 0, 0.8); + background-color: rgba(0, 0, 0, 0.8); color: white !important; border-radius: 0 !important; box-shadow: inset 1px 1px 10px rgba(255, 255, 255, 0.3); @@ -15,7 +19,8 @@ nav { border-bottom: 1px dashed rgba(0, 0, 0, 0.5); } -nav, footer { +nav, +footer { background: linear-gradient(to right, #2c4072, #091024); } @@ -26,19 +31,41 @@ footer { border-top: 1px dashed rgba(0, 0, 0, 0.85); } - /* accordion */ -.accordion { margin: 10px; } -.card-header { background-color: cornsilk; cursor: pointer; } -.card-header:hover { background-color: rgb(241, 234, 203); } -.card-header h1 { color: darkslateblue; text-shadow: 2px 2px 3px #41a8b2; } -.card-content { background-color: honeydew; } +.accordion { + margin: 10px; +} +.card-header { + background-color: cornsilk; + cursor: pointer; +} +.card-header:hover { + background-color: rgb(241, 234, 203); +} +.card-header h1 { + color: darkslateblue; + text-shadow: 2px 2px 3px #41a8b2; +} +.card-content { + background-color: honeydew; +} /* album */ -#albums_header { color: white; text-shadow: 2px 2px purple; } -.album { color: white; text-shadow: 2px 1px red; } -.album a { text-shadow: none; } -.album a.listen { color: yellow; font-weight: bold; } +#albums_header { + color: white; + text-shadow: 2px 2px purple; +} +.album { + color: white; + text-shadow: 2px 1px red; +} +.album a { + text-shadow: none; +} +.album a.listen { + color: yellow; + font-weight: bold; +} /* hover */ .hover-effect { @@ -56,8 +83,8 @@ footer { .hover-effect img { display: block; position: relative; - -webkit-transition: all .4s linear; - transition: all .4s linear; + -webkit-transition: all 0.4s linear; + transition: all 0.4s linear; } .hover-effect .overlay { @@ -69,8 +96,8 @@ footer { left: 0; opacity: 0; background-color: rgba(0, 0, 0, 0.5); - -webkit-transition: all .4s ease-in-out; - transition: all .4s ease-in-out; + -webkit-transition: all 0.4s ease-in-out; + transition: all 0.4s ease-in-out; } .hover-effect:hover img { @@ -79,7 +106,12 @@ footer { transform: scale(1.2); } -.hover-effect:hover .overlay { opacity: 1; filter: alpha(opacity=100); } +.hover-effect:hover .overlay { + opacity: 1; + filter: alpha(opacity=100); +} /* bootstrap ... */ -.form-group { margin: auto; } \ No newline at end of file +.form-group { + margin: auto; +} diff --git a/index.html b/index.html index bfc1337..a965a85 100644 --- a/index.html +++ b/index.html @@ -1,91 +1,117 @@ - - - - - - - + + + + + + + - - - - + + + + - My Latest New Listened Albums - - + My Latest New Listened Albums + + + +

-
+
- -
-

My Latest New Listened Albums

-
+ +
+

My Latest New Listened Albums

+
- -
- -
+ +
+
+
+
+
+

+ Challanged by + + MrS4w + + to do something related to my last "new" listened albums. +

+
+
+ + +
+
+

Header

+
+
+
+
+
+
- + - - - - - - \ No newline at end of file + + + + + + diff --git a/js/data/2019.json b/js/data/2019.json index 26efad9..c46c57f 100644 --- a/js/data/2019.json +++ b/js/data/2019.json @@ -1,221 +1,220 @@ { - "year": "2019", - "albums": [ - { - "name": "Seventh Star", - "artist": "Black Sabbath", - "genre": "Heavy Metal", - "releaseYear": "1986", - "cover": "covers/black-sabbath--seventh-star.png", - "streamLink": "https://open.spotify.com/album/557z9zU5A2g5jhZBiu8obi" - }, - { - "name": "The Very Best", - "artist": "INXS", - "genre": "New Wave", - "releaseYear": "2011", - "cover": "covers/inxs--the-very-best.png", - "streamLink": "https://open.spotify.com/album/0ByciEsG5VvGzWOG7o3rAn" - }, - { - "name": "No Easy Way Out", - "artist": "Robert Tepper", - "genre": "Rock", - "releaseYear": "1986", - "cover": "covers/robert-tepper--no-easy-way-out.png", - "streamLink": "https://open.spotify.com/album/1hN5Xzuzfhqk2sIBtNZmP1" - }, - { - "name": "Fixed", - "artist": "Nine Inch Nails", - "genre": "Industrial Rock", - "releaseYear": "1992", - "cover": "covers/nine-inch-nails--fixed.png", - "streamLink": "https://open.spotify.com/album/6tmbCwAFWR5Qe9TaXjP8jN" - }, - { - "name": "Don't Stop", - "artist": "Billy Idol", - "genre": "Dance-Rock", - "releaseYear": "1981", - "cover": "covers/billy-idol--dont-stop.png", - "streamLink": "https://open.spotify.com/album/6UNswjupuKnxiPMnEAa9Hp" - }, - { - "name": "Dreams of Reason Produce Monsters", - "artist": "Mick Karn", - "genre": "Experimental Rock", - "releaseYear": "1986", - "cover": "covers/mick-karn--dreams-of-reason-produce-monsters.png", - "streamLink": "https://open.spotify.com/album/6dZ3jcyq6IIEdEpOS1rsDM" - }, - { - "name": "Songs for the Deaf", - "artist": "Queens of the Stone Age", - "genre": "Stoner Rock", - "releaseYear": "2002", - "cover": "covers/queens-of-the-stone-age--songs-for-the-deaf.png", - "streamLink": "https://open.spotify.com/album/4w3NeXtywU398NYW4903rY" - }, - { - "name": "Don't Say No", - "artist": "Billy Squier", - "genre": "Rock", - "releaseYear": "1981", - "cover": "covers/billy-squier--dont-say-no.png", - "streamLink": "https://open.spotify.com/album/6TwlLNU5Zd9qGuNgSLeWPt" - }, - { - "name": "16 Strokes: The Best of Billy Squier", - "artist": "Billy Squier", - "genre": "Rock", - "releaseYear": "1995", - "cover": "covers/billy-squier--16-strokes-the-best-of-billy-squier.png", - "streamLink": "https://open.spotify.com/album/6YtnoMLw5v2UhFTReAn7z1" - }, - { - "name": "Damn Yankees", - "artist": "Damn Yankees", - "genre": "Hard Rock", - "releaseYear": "1990", - "cover": "covers/damn-yankees--damn-yankees.png", - "streamLink": "https://open.spotify.com/album/2GSZ2kruaBmA5hR9xngeBX" - }, - { - "name": "Mr. Big", - "artist": "Mr. Big", - "genre": "Hard Rock", - "releaseYear": "1989", - "cover": "covers/mr-big--mr-big.png", - "streamLink": "https://open.spotify.com/album/18HPDet34B8LwgCfagDeZd" - }, - { - "name": "Lean into It", - "artist": "Mr. Big", - "genre": "Hard Rock", - "releaseYear": 1991, - "cover": "covers/mr-big--lean-into-it.png", - "streamLink": "https://open.spotify.com/album/6CrjpyjlfjK95oHF6dvEnQ" - }, - { - "name": "In Trance", - "artist": "Scorpions", - "genre": "Hard Rock", - "releaseYear": 1975, - "cover": "covers/scorpions--in-trance.png", - "streamLink": "https://open.spotify.com/album/1IxCkGzmfbrod37MqDPUHm" - }, - { - "name": "Lest We Forget (The Best Of)", - "artist": "Marilyn Manson", - "genre": "Heavy Metal", - "releaseYear": "2004", - "cover": "covers/marilyn-manson--lest-we-forget-the-best-of.png", - "streamLink": "https://open.spotify.com/album/16iYefmYfh5RJg4XEi6rG9" - }, - { - "name": "Further Down the Spiral", - "artist": "Nine Inch Nails", - "genre": "Post-industrial", - "releaseYear": "1995", - "cover": "covers/nine-inch-nails--further-down-the-spiral.png", - "streamLink": "https://open.spotify.com/album/6v4pXGNQv0Xc81H3iYdybc" - }, - { - "name": "The Headless Children", - "artist": "W.A.S.P", - "genre": "Heavy Metal", - "releaseYear": "1989", - "cover": "covers/wasp--the-headless-children.png", - "streamLink": "https://open.spotify.com/album/73tznjCvNu9tDQW5jcrglq" - }, - { - "name": "The Crimson Idol", - "artist": "W.A.S.P", - "genre": "Heavy Metal", - "releaseYear": "1992", - "cover": "covers/wasp--the-crimson-idol.png", - "streamLink": "https://open.spotify.com/album/1qIXNs2KIv1DfO01lwoUfz" - }, - { - "name": "2112", - "artist": "Rush", - "genre": "Progressive Rock", - "releaseYear": "1976", - "cover": "covers/rush--2112.png", - "streamLink": "https://open.spotify.com/album/5g5aKkI0ExfU4kDvADP6JK" - }, - { - "name": "Seven Inches of Satanic Panic", - "artist": "Ghost", - "genre": "Psychedelic Rock", - "releaseYear": "2019", - "cover": "covers/ghost--seven-inches-of-satanic-panic.png", - "streamLink": "https://open.spotify.com/album/6eOWfFjfBPRsAW0ZS4sbaF" - }, - { - "name": "Point Blank", - "artist": "Nailbomb", - "genre": "Industrial Thrash Metal", - "releaseYear": "1994", - "cover": "covers/nailbomb--point-blank.png", - "streamLink": "https://open.spotify.com/album/0CcgwAkqiglrLu6lH5lrSU" - }, - { - "name": "Catch the Fall", - "artist": "The Dolphin Brothers", - "genre": "New Wave", - "releaseYear": "1987", - "cover": "covers/the-dolphin-brothers--catch-the-fall.png", - "streamLink": "https://open.spotify.com/album/2bwRV1MkfbD4rEcNNQjGRA" - }, - { - "name": "No Heavy Petting", - "artist": "UFO", - "genre": "Hard Rock", - "releaseYear": "1976", - "cover": "covers/ufo--no-heavy-petting.png", - "streamLink": "https://open.spotify.com/album/3lu8Z9INHhbKLpS4LkJArz" - }, - { - "name": "Straight Between the Eyes", - "artist": "Rainbow", - "genre": "Hard Rock", - "releaseYear": "1982", - "cover": "covers/rainbow--straight-between-the-eyes.png", - "streamLink": "https://open.spotify.com/playlist/0QFpnE6PHJyczy8mQYVQdk" - }, - { - "name": "Seed", - "artist": "JBK", - "genre": "Alternative", - "releaseYear": "1994", - "cover": "covers/jbk--seed.png", - "streamLink": "https://jbkmusic.bandcamp.com/album/seed" - }, - { - "name": "Generation Terrorists", - "artist": "Manic Street Preachers", - "genre": "Alternative Rock", - "releaseYear": "1992", - "cover": "covers/manic-street-preachers--generation-terrorists.png", - "streamLink": "https://open.spotify.com/album/5ZhZUAD6C0CkjXPsuDggmA" - }, - { - "name": "High Voltage", - "artist": "AC/DC", - "genre": "Hard Rock", - "releaseYear": "1976", - "cover": "covers/acdc--high-voltage.png", - "streamLink": "https://open.spotify.com/album/19AUoKWRAaQYrggVvdQnqq" - }, - { - "name": "Thirteenth Step", - "artist": "A Perfect Circle", - "genre": "Alternative Metal", - "releaseYear": "2003", - "cover": "covers/a-perfect-circle--thirteenth-step.png", - "streamLink": "https://open.spotify.com/album/49K6hYDEr5M3GxIBBxlPf9" - } - ] + "year": "2019", + "albums": [{ + "name": "Seventh Star", + "artist": "Black Sabbath", + "genre": "Heavy Metal", + "releaseYear": "1986", + "cover": "covers/black-sabbath--seventh-star.png", + "streamLink": "https://open.spotify.com/album/557z9zU5A2g5jhZBiu8obi" + }, + { + "name": "The Very Best", + "artist": "INXS", + "genre": "New Wave", + "releaseYear": "2011", + "cover": "covers/inxs--the-very-best.png", + "streamLink": "https://open.spotify.com/album/0ByciEsG5VvGzWOG7o3rAn" + }, + { + "name": "No Easy Way Out", + "artist": "Robert Tepper", + "genre": "Rock", + "releaseYear": "1986", + "cover": "covers/robert-tepper--no-easy-way-out.png", + "streamLink": "https://open.spotify.com/album/1hN5Xzuzfhqk2sIBtNZmP1" + }, + { + "name": "Fixed", + "artist": "Nine Inch Nails", + "genre": "Industrial Rock", + "releaseYear": "1992", + "cover": "covers/nine-inch-nails--fixed.png", + "streamLink": "https://open.spotify.com/album/6tmbCwAFWR5Qe9TaXjP8jN" + }, + { + "name": "Don't Stop", + "artist": "Billy Idol", + "genre": "Dance-Rock", + "releaseYear": "1981", + "cover": "covers/billy-idol--dont-stop.png", + "streamLink": "https://open.spotify.com/album/6UNswjupuKnxiPMnEAa9Hp" + }, + { + "name": "Dreams of Reason Produce Monsters", + "artist": "Mick Karn", + "genre": "Experimental Rock", + "releaseYear": "1986", + "cover": "covers/mick-karn--dreams-of-reason-produce-monsters.png", + "streamLink": "https://open.spotify.com/album/6dZ3jcyq6IIEdEpOS1rsDM" + }, + { + "name": "Songs for the Deaf", + "artist": "Queens of the Stone Age", + "genre": "Stoner Rock", + "releaseYear": "2002", + "cover": "covers/queens-of-the-stone-age--songs-for-the-deaf.png", + "streamLink": "https://open.spotify.com/album/4w3NeXtywU398NYW4903rY" + }, + { + "name": "Don't Say No", + "artist": "Billy Squier", + "genre": "Rock", + "releaseYear": "1981", + "cover": "covers/billy-squier--dont-say-no.png", + "streamLink": "https://open.spotify.com/album/6TwlLNU5Zd9qGuNgSLeWPt" + }, + { + "name": "16 Strokes: The Best of Billy Squier", + "artist": "Billy Squier", + "genre": "Rock", + "releaseYear": "1995", + "cover": "covers/billy-squier--16-strokes-the-best-of-billy-squier.png", + "streamLink": "https://open.spotify.com/album/6YtnoMLw5v2UhFTReAn7z1" + }, + { + "name": "Damn Yankees", + "artist": "Damn Yankees", + "genre": "Hard Rock", + "releaseYear": "1990", + "cover": "covers/damn-yankees--damn-yankees.png", + "streamLink": "https://open.spotify.com/album/2GSZ2kruaBmA5hR9xngeBX" + }, + { + "name": "Mr. Big", + "artist": "Mr. Big", + "genre": "Hard Rock", + "releaseYear": "1989", + "cover": "covers/mr-big--mr-big.png", + "streamLink": "https://open.spotify.com/album/18HPDet34B8LwgCfagDeZd" + }, + { + "name": "Lean into It", + "artist": "Mr. Big", + "genre": "Hard Rock", + "releaseYear": 1991, + "cover": "covers/mr-big--lean-into-it.png", + "streamLink": "https://open.spotify.com/album/6CrjpyjlfjK95oHF6dvEnQ" + }, + { + "name": "In Trance", + "artist": "Scorpions", + "genre": "Hard Rock", + "releaseYear": 1975, + "cover": "covers/scorpions--in-trance.png", + "streamLink": "https://open.spotify.com/album/1IxCkGzmfbrod37MqDPUHm" + }, + { + "name": "Lest We Forget (The Best Of)", + "artist": "Marilyn Manson", + "genre": "Heavy Metal", + "releaseYear": "2004", + "cover": "covers/marilyn-manson--lest-we-forget-the-best-of.png", + "streamLink": "https://open.spotify.com/album/16iYefmYfh5RJg4XEi6rG9" + }, + { + "name": "Further Down the Spiral", + "artist": "Nine Inch Nails", + "genre": "Post-industrial", + "releaseYear": "1995", + "cover": "covers/nine-inch-nails--further-down-the-spiral.png", + "streamLink": "https://open.spotify.com/album/6v4pXGNQv0Xc81H3iYdybc" + }, + { + "name": "The Headless Children", + "artist": "W.A.S.P", + "genre": "Heavy Metal", + "releaseYear": "1989", + "cover": "covers/wasp--the-headless-children.png", + "streamLink": "https://open.spotify.com/album/73tznjCvNu9tDQW5jcrglq" + }, + { + "name": "The Crimson Idol", + "artist": "W.A.S.P", + "genre": "Heavy Metal", + "releaseYear": "1992", + "cover": "covers/wasp--the-crimson-idol.png", + "streamLink": "https://open.spotify.com/album/1qIXNs2KIv1DfO01lwoUfz" + }, + { + "name": "2112", + "artist": "Rush", + "genre": "Progressive Rock", + "releaseYear": "1976", + "cover": "covers/rush--2112.png", + "streamLink": "https://open.spotify.com/album/5g5aKkI0ExfU4kDvADP6JK" + }, + { + "name": "Seven Inches of Satanic Panic", + "artist": "Ghost", + "genre": "Psychedelic Rock", + "releaseYear": "2019", + "cover": "covers/ghost--seven-inches-of-satanic-panic.png", + "streamLink": "https://open.spotify.com/album/6eOWfFjfBPRsAW0ZS4sbaF" + }, + { + "name": "Point Blank", + "artist": "Nailbomb", + "genre": "Industrial Thrash Metal", + "releaseYear": "1994", + "cover": "covers/nailbomb--point-blank.png", + "streamLink": "https://open.spotify.com/album/0CcgwAkqiglrLu6lH5lrSU" + }, + { + "name": "Catch the Fall", + "artist": "The Dolphin Brothers", + "genre": "New Wave", + "releaseYear": "1987", + "cover": "covers/the-dolphin-brothers--catch-the-fall.png", + "streamLink": "https://open.spotify.com/album/2bwRV1MkfbD4rEcNNQjGRA" + }, + { + "name": "No Heavy Petting", + "artist": "UFO", + "genre": "Hard Rock", + "releaseYear": "1976", + "cover": "covers/ufo--no-heavy-petting.png", + "streamLink": "https://open.spotify.com/album/3lu8Z9INHhbKLpS4LkJArz" + }, + { + "name": "Straight Between the Eyes", + "artist": "Rainbow", + "genre": "Hard Rock", + "releaseYear": "1982", + "cover": "covers/rainbow--straight-between-the-eyes.png", + "streamLink": "https://open.spotify.com/playlist/0QFpnE6PHJyczy8mQYVQdk" + }, + { + "name": "Seed", + "artist": "JBK", + "genre": "Alternative", + "releaseYear": "1994", + "cover": "covers/jbk--seed.png", + "streamLink": "https://jbkmusic.bandcamp.com/album/seed" + }, + { + "name": "Generation Terrorists", + "artist": "Manic Street Preachers", + "genre": "Alternative Rock", + "releaseYear": "1992", + "cover": "covers/manic-street-preachers--generation-terrorists.png", + "streamLink": "https://open.spotify.com/album/5ZhZUAD6C0CkjXPsuDggmA" + }, + { + "name": "High Voltage", + "artist": "AC/DC", + "genre": "Hard Rock", + "releaseYear": "1976", + "cover": "covers/acdc--high-voltage.png", + "streamLink": "https://open.spotify.com/album/19AUoKWRAaQYrggVvdQnqq" + }, + { + "name": "Thirteenth Step", + "artist": "A Perfect Circle", + "genre": "Alternative Metal", + "releaseYear": "2003", + "cover": "covers/a-perfect-circle--thirteenth-step.png", + "streamLink": "https://open.spotify.com/album/49K6hYDEr5M3GxIBBxlPf9" + } + ] } \ No newline at end of file diff --git a/js/data/2020.json b/js/data/2020.json index e161af8..36bf475 100644 --- a/js/data/2020.json +++ b/js/data/2020.json @@ -1,389 +1,388 @@ { - "year": "2020", - "albums": [ - { - "name": "Homework", - "artist": "Daft Punk", - "genre": "House", - "releaseYear": "1997", - "cover": "covers/daft-punk--homework.png", - "streamLink": "https://open.spotify.com/album/5uRdvUR7xCnHmUW8n64n9y" - }, - { - "name": "Discovery", - "artist": "Daft Punk", - "genre": "Disco", - "releaseYear": "2001", - "cover": "covers/daft-punk--discovery.png", - "streamLink": "https://open.spotify.com/album/2noRn2Aes5aoNVsU6iWThc" - }, - { - "name": "Human After All", - "artist": "Daft Punk", - "genre": "Dance-rock", - "releaseYear": "2005", - "cover": "covers/daft-punk--human-after-all.png", - "streamLink": "https://open.spotify.com/album/2T7DdrOvsqOqU9bGTkjBYu" - }, - { - "name": "Random Access Memories", - "artist": "Daft Punk", - "genre": "Disco", - "releaseYear": "2013", - "cover": "covers/daft-punk--random-access-memories.png", - "streamLink": "https://open.spotify.com/album/4m2880jivSbbyEGAKfITCa" - }, - { - "name": "Mob Rules", - "artist": "Black Sabbath", - "genre": "Heavy Metal", - "releaseYear": "1981", - "cover": "covers/black-sabbath--mob-rules.png", - "streamLink": "https://open.spotify.com/album/2iaECLD2YLSEOkSfi7BRaC" - }, - { - "name": "Holy Diver", - "artist": "Dio", - "genre": "Heavy Metal", - "releaseYear": "1983", - "cover": "covers/dio--holy-diver.png", - "streamLink": "https://open.spotify.com/album/1QJmLRcuIMMjZ49elafR3K" - }, - { - "name": "Live at The Brixton Academy", - "artist": "Faith No More", - "genre": "Alternative Metal", - "releaseYear": "1991", - "cover": "covers/faith-no-more--live-at-the-brixton-academy.png", - "streamLink": "https://open.spotify.com/album/30aiwTsoJlbCIDXqDT947h" - }, - { - "name": "Bad", - "artist": "Michael Jackson", - "genre": "Pop", - "releaseYear": "1987", - "cover": "covers/michael-jackson--bad.png", - "streamLink": "https://open.spotify.com/album/3Us57CjssWnHjTUIXBuIeH" - }, - { - "name": "Dangerous", - "artist": "Michael Jackson", - "genre": "New Jack Swing", - "releaseYear": "1991", - "cover": "covers/michael-jackson--dangerous.png", - "streamLink": "https://open.spotify.com/album/0oX4SealMgNXrvRDhqqOKg" - }, - { - "name": "Scary Monsters (and Super Creeps)", - "artist": "David Bowie", - "genre": "Art Rock", - "releaseYear": "1980", - "cover": "covers/david-bowie--scary-monsters-and-super-creeps.png", - "streamLink": "https://open.spotify.com/album/5fxvWHvIDPIALfTfRiwyB0" - }, - { - "name": "Lament", - "artist": "Ultravox", - "genre": "New Wave", - "releaseYear": "1984", - "cover": "covers/ultravox--lament.png", - "streamLink": "https://open.spotify.com/album/4gwKE70npgEOk9sFd9aTYt" - }, - { - "name": "Burn", - "artist": "Deep Purple", - "genre": "Hard Rock", - "releaseYear": "1974", - "cover": "covers/deep-purple--burn.png", - "streamLink": "https://open.spotify.com/album/3wR7UC2ij2dx0TbtiMP4J9" - }, - { - "name": "Star Fleet Project", - "artist": "Brian May", - "genre": "Hard Rock", - "releaseYear": "1983", - "cover": "covers/brian-may--star-fleet-project.png", - "streamLink": "https://www.youtube.com/watch?v=Zux1-a2rRHc" - }, - { - "name": "David Bowie (1969)", - "artist": "David Bowie", - "genre": "Folk Rock", - "releaseYear": "1969", - "cover": "covers/david-bowie--david-bowie.png", - "streamLink": "https://open.spotify.com/album/1ay9Z4R5ZYI2TY7WiDhNYQ" - }, - { - "name": "The Album", - "artist": "Haddaway", - "genre": "Eurodance", - "releaseYear": "1993", - "cover": "covers/haddaway--the-album.png", - "streamLink": "https://open.spotify.com/album/1LAx7yCVbGwskdnGDof8SC" - }, - { - "name": "Scoundrel Days", - "artist": "A-ha", - "genre": "Synth-pop", - "releaseYear": "1986", - "cover": "covers/a-ha--scoundrel-days.png", - "streamLink": "https://open.spotify.com/album/0Or3lqjBWQAfmyigntPSL6" - }, - { - "name": "The Top", - "artist": "The Cure", - "genre": "Gothic Rock", - "releaseYear": "1984", - "cover": "covers/the-cure--the-top.png", - "streamLink": "https://open.spotify.com/album/5OniNO040dM4H5kAlet3XV" - }, - { - "name": "Ordinary Man", - "artist": "Ozzy Osbourne", - "genre": "Heavy Metal", - "releaseYear": "2020", - "cover": "covers/ozzy-osbourne--ordinary-man.png", - "streamLink": "https://open.spotify.com/album/2x2cG56QicVfymWnRF0Nmj" - }, - { - "name": "Badmotorfinger", - "artist": "Soundgarden", - "genre": "Grunge", - "releaseYear": "1991", - "cover": "covers/soundgarden--badmotorfinger.png", - "streamLink": "https://open.spotify.com/album/2W6MaUiInBkna5DfBES4E3" - }, - { - "name": "White Feathers", - "artist": "Kajagoogoo", - "genre": "New Wave", - "releaseYear": "1983", - "cover": "covers/kajagoogoo--white-feathers.png", - "streamLink": "https://open.spotify.com/album/52koatNHePHRWEmmkP0z2Z" - }, - { - "name": "How Could It Be", - "artist": "Eddie Murphy", - "genre": "R&B", - "releaseYear": "1985", - "cover": "covers/eddie-murphy--how-could-it-be.png", - "streamLink": "https://open.spotify.com/album/2ghvihRomDb37X59VK6hp5" - }, - { - "name": "Disconnected", - "artist": "Dry Cell", - "genre": "Nu Metal", - "releaseYear": "2002", - "cover": "covers/dry-cell--disconnected.png", - "streamLink": "https://open.spotify.com/playlist/4UOYLanHctM74mBt1pcdUQ" - }, - { - "name": "Iron Savior", - "artist": "Iron Savior", - "genre": "Power Metal", - "releaseYear": "1997", - "cover": "covers/iron-savior--iron-savior.png", - "streamLink": "https://open.spotify.com/album/2DfiAmdJotkHGxKVgCJgtk" - }, - { - "name": "Give Me Fire", - "artist": "Mando Diao", - "genre": "Indie rock", - "releaseYear": "2009", - "cover": "covers/mando-diao--give-me-fire.png", - "streamLink": "https://open.spotify.com/album/0Z6I8nXSQ5QPfuCPcoXlMj" - }, - { - "name": "The Land of Rape and Honey", - "artist": "Ministry", - "genre": "Industrial Rock", - "releaseYear": "1988", - "cover": "covers/ministry--the-land-of-rape-and-honey.png", - "streamLink": "https://open.spotify.com/album/6TyCJQqyB8OZLhUEPCNgNT" - }, - { - "name": "Zui", - "artist": "Showtaro Morikubo", - "genre": "J-Rock", - "releaseYear": "2001", - "cover": "covers/showtaro-morikubo--zui.png", - "streamLink": "https://www.youtube.com/watch?v=Sncc28xIIIk" - }, - { - "name": "New Clear Days", - "artist": "The Vapors", - "genre": "New Wave", - "releaseYear": "1980", - "cover": "covers/the-vapors--new-clear-days.png", - "streamLink": "https://open.spotify.com/album/0vAu0PT8xKotNhKDzYXJHA" - }, - { - "name": "Symbols", - "artist": "KMDFM", - "genre": "Industrial rock", - "releaseYear": "1997", - "cover": "covers/kmdfm--symbols.png", - "streamLink": "https://open.spotify.com/album/6g99frcxtUThvTjTwo9LfC" - }, - { - "name": "H2O", - "artist": "Hall & Oates", - "genre": "Pop", - "releaseYear": "1983", - "cover": "covers/hall-oates--h2o.png", - "streamLink": "https://open.spotify.com/album/7ygXmT175bKbOpiPjNwXOB" - }, - { - "name": "To Hell with the Devil", - "artist": "Stryper", - "genre": "Christian Metal", - "releaseYear": "1986", - "cover": "covers/stryper--to-hell-with-the-devil.png", - "streamLink": "https://open.spotify.com/album/4LAVjeUmJl3h3U44sMRrfm" - }, - { - "name": "Quadra", - "artist": "Sepultura", - "genre": "Thrash Metal", - "releaseYear": "2020", - "cover": "covers/sepultura--quadra.png", - "streamLink": "https://open.spotify.com/album/1OyRMXY6FZ4cUTTdzCBPSh" - }, - { - "name": "Antichrist Superstar", - "artist": "Marilyn Manson", - "genre": "Industrial Metal", - "releaseYear": "1996", - "cover": "covers/marilyn-manson--antichrist-superstar.png", - "streamLink": "https://open.spotify.com/album/7APnZJwayR3lH9aUDPDYQB" - }, - { - "name": "The Very Best of Kajagoogoo", - "artist": "Kajagoogoo", - "genre": "New Wave", - "releaseYear": "1996", - "cover": "covers/kajagoogoo--the-very-best-of-kajagoogoo.png", - "streamLink": "https://open.spotify.com/album/18QlJWuxHQ1IGQ52qf8T1m" - }, - { - "name": "Liberty", - "artist": "Duran Duran", - "genre": "Pop Rock", - "releaseYear": "1990", - "cover": "covers/duran-duran--liberty.png", - "streamLink": "https://open.spotify.com/album/6xt4fhJG5VevU7fVmqvlO7" - }, - { - "name": "Thank You", - "artist": "Duran Duran", - "genre": "Alternative Rock", - "releaseYear": "1995", - "cover": "covers/duran-duran--thank-you.png", - "streamLink": "https://open.spotify.com/album/2XIlp6UgHAQYNg3OTtoD54" - }, - { - "name": "Paranoid", - "artist": "Black Sabbath", - "genre": "Heavy Metal", - "releaseYear": "1970", - "cover": "covers/black-sabbath--paranoid.png", - "streamLink": "https://open.spotify.com/album/132qAo1cDiEJdA3fv4xyNK" - }, - { - "name": "Master of Reality", - "artist": "Black Sabbath", - "genre": "Heavy Metal", - "releaseYear": "1971", - "cover": "covers/black-sabbath--master-of-reality.png", - "streamLink": "https://open.spotify.com/album/3kBG6q0aXKxzn01wKTwZr5" - }, - { - "name": "Sabotage", - "artist": "Black Sabbath", - "genre": "Heavy Metal", - "releaseYear": "1975", - "cover": "covers/black-sabbath--sabotage.png", - "streamLink": "https://open.spotify.com/album/2hurj4babJXt1cIxmYFqqo" - }, - { - "name": "Vol. 4", - "artist": "Black Sabbath", - "genre": "Heavy Metal", - "releaseYear": "1972", - "cover": "covers/black-sabbath--vol-4.png", - "streamLink": "https://open.spotify.com/album/3iRW4cZOM90lX9Rtc2Qglh" - }, - { - "name": "Kill. Fuck. Die.", - "artist": "W.A.S.P.", - "genre": "Heavy Metal", - "releaseYear": "1997", - "cover": "covers/wasp--kill-fuck-die.png", - "streamLink": "https://www.youtube.com/watch?v=L-V5e6H--eo" - }, - { - "name": "Still Not Black Enough", - "artist": "W.A.S.P.", - "genre": "Heavy Metal", - "releaseYear": "1995", - "cover": "covers/wasp--still-not-black-enough.png", - "streamLink": "https://www.youtube.com/watch?v=JjMBjRG1oSg" - }, - { - "name": "Dirty Deeds Done Dirt Cheap", - "artist": "AC/DC", - "genre": "Hard Rock", - "releaseYear": "1976", - "cover": "covers/acdc--dirty-deeds-done-dirt-cheap.png", - "streamLink": "https://open.spotify.com/album/76mvVgXOde87B9aOzLXCOI" - }, - { - "name": "Let There Be Rock", - "artist": "AC/DC", - "genre": "Hard Rock", - "releaseYear": "1977", - "cover": "covers/acdc--let-there-be-rock.png", - "streamLink": "https://open.spotify.com/album/3JwFNl80WWeXPiKEjIFbqa" - }, - { - "name": "Blackstar", - "artist": "David Bowie", - "genre": "Art Rock", - "releaseYear": "2016", - "cover": "covers/david-bowie--black-star.png", - "streamLink": "https://open.spotify.com/album/2w1YJXWMIco6EBf0CovvVN" - }, - { - "name": "Wisconsin Death Trip", - "artist": "Static X", - "genre": "Industrial Metal", - "releaseYear": "1999", - "cover": "covers/static-x--wisconsin-death-trip.png", - "streamLink": "https://open.spotify.com/album/2WRLwr5MIIXr9gAWOOQ6J5" - }, - { - "name": "ABBA Gold: Greatest Hits", - "artist": "ABBA", - "genre": "Europop", - "releaseYear": "1992", - "cover": "covers/abba--gold-greatest-hits.png", - "streamLink": "https://open.spotify.com/playlist/5zDA9OCLRf44MfKBus4Klj" - }, - { - "name": "Start a War", - "artist": "Static X", - "genre": "Industrial Metal", - "releaseYear": "2005", - "cover": "covers/static-x--start-a-war.png", - "streamLink": "https://open.spotify.com/album/71j3INQJXy1sSQPkPiYxIO" - }, - { - "name": "Rising Force", - "artist": "Yngwie Malmsteen", - "genre": "Neoclassical Metal", - "releaseYear": "1984", - "cover": "covers/yngwie-malmsteen--rising-force.png", - "streamLink": "https://www.youtube.com/watch?v=IVRD3A4XvDQ" - } - ] + "year": "2020", + "albums": [{ + "name": "Homework", + "artist": "Daft Punk", + "genre": "House", + "releaseYear": "1997", + "cover": "covers/daft-punk--homework.png", + "streamLink": "https://open.spotify.com/album/5uRdvUR7xCnHmUW8n64n9y" + }, + { + "name": "Discovery", + "artist": "Daft Punk", + "genre": "Disco", + "releaseYear": "2001", + "cover": "covers/daft-punk--discovery.png", + "streamLink": "https://open.spotify.com/album/2noRn2Aes5aoNVsU6iWThc" + }, + { + "name": "Human After All", + "artist": "Daft Punk", + "genre": "Dance-rock", + "releaseYear": "2005", + "cover": "covers/daft-punk--human-after-all.png", + "streamLink": "https://open.spotify.com/album/2T7DdrOvsqOqU9bGTkjBYu" + }, + { + "name": "Random Access Memories", + "artist": "Daft Punk", + "genre": "Disco", + "releaseYear": "2013", + "cover": "covers/daft-punk--random-access-memories.png", + "streamLink": "https://open.spotify.com/album/4m2880jivSbbyEGAKfITCa" + }, + { + "name": "Mob Rules", + "artist": "Black Sabbath", + "genre": "Heavy Metal", + "releaseYear": "1981", + "cover": "covers/black-sabbath--mob-rules.png", + "streamLink": "https://open.spotify.com/album/2iaECLD2YLSEOkSfi7BRaC" + }, + { + "name": "Holy Diver", + "artist": "Dio", + "genre": "Heavy Metal", + "releaseYear": "1983", + "cover": "covers/dio--holy-diver.png", + "streamLink": "https://open.spotify.com/album/1QJmLRcuIMMjZ49elafR3K" + }, + { + "name": "Live at The Brixton Academy", + "artist": "Faith No More", + "genre": "Alternative Metal", + "releaseYear": "1991", + "cover": "covers/faith-no-more--live-at-the-brixton-academy.png", + "streamLink": "https://open.spotify.com/album/30aiwTsoJlbCIDXqDT947h" + }, + { + "name": "Bad", + "artist": "Michael Jackson", + "genre": "Pop", + "releaseYear": "1987", + "cover": "covers/michael-jackson--bad.png", + "streamLink": "https://open.spotify.com/album/3Us57CjssWnHjTUIXBuIeH" + }, + { + "name": "Dangerous", + "artist": "Michael Jackson", + "genre": "New Jack Swing", + "releaseYear": "1991", + "cover": "covers/michael-jackson--dangerous.png", + "streamLink": "https://open.spotify.com/album/0oX4SealMgNXrvRDhqqOKg" + }, + { + "name": "Scary Monsters (and Super Creeps)", + "artist": "David Bowie", + "genre": "Art Rock", + "releaseYear": "1980", + "cover": "covers/david-bowie--scary-monsters-and-super-creeps.png", + "streamLink": "https://open.spotify.com/album/5fxvWHvIDPIALfTfRiwyB0" + }, + { + "name": "Lament", + "artist": "Ultravox", + "genre": "New Wave", + "releaseYear": "1984", + "cover": "covers/ultravox--lament.png", + "streamLink": "https://open.spotify.com/album/4gwKE70npgEOk9sFd9aTYt" + }, + { + "name": "Burn", + "artist": "Deep Purple", + "genre": "Hard Rock", + "releaseYear": "1974", + "cover": "covers/deep-purple--burn.png", + "streamLink": "https://open.spotify.com/album/3wR7UC2ij2dx0TbtiMP4J9" + }, + { + "name": "Star Fleet Project", + "artist": "Brian May", + "genre": "Hard Rock", + "releaseYear": "1983", + "cover": "covers/brian-may--star-fleet-project.png", + "streamLink": "https://www.youtube.com/watch?v=Zux1-a2rRHc" + }, + { + "name": "David Bowie (1969)", + "artist": "David Bowie", + "genre": "Folk Rock", + "releaseYear": "1969", + "cover": "covers/david-bowie--david-bowie.png", + "streamLink": "https://open.spotify.com/album/1ay9Z4R5ZYI2TY7WiDhNYQ" + }, + { + "name": "The Album", + "artist": "Haddaway", + "genre": "Eurodance", + "releaseYear": "1993", + "cover": "covers/haddaway--the-album.png", + "streamLink": "https://open.spotify.com/album/1LAx7yCVbGwskdnGDof8SC" + }, + { + "name": "Scoundrel Days", + "artist": "A-ha", + "genre": "Synth-pop", + "releaseYear": "1986", + "cover": "covers/a-ha--scoundrel-days.png", + "streamLink": "https://open.spotify.com/album/0Or3lqjBWQAfmyigntPSL6" + }, + { + "name": "The Top", + "artist": "The Cure", + "genre": "Gothic Rock", + "releaseYear": "1984", + "cover": "covers/the-cure--the-top.png", + "streamLink": "https://open.spotify.com/album/5OniNO040dM4H5kAlet3XV" + }, + { + "name": "Ordinary Man", + "artist": "Ozzy Osbourne", + "genre": "Heavy Metal", + "releaseYear": "2020", + "cover": "covers/ozzy-osbourne--ordinary-man.png", + "streamLink": "https://open.spotify.com/album/2x2cG56QicVfymWnRF0Nmj" + }, + { + "name": "Badmotorfinger", + "artist": "Soundgarden", + "genre": "Grunge", + "releaseYear": "1991", + "cover": "covers/soundgarden--badmotorfinger.png", + "streamLink": "https://open.spotify.com/album/2W6MaUiInBkna5DfBES4E3" + }, + { + "name": "White Feathers", + "artist": "Kajagoogoo", + "genre": "New Wave", + "releaseYear": "1983", + "cover": "covers/kajagoogoo--white-feathers.png", + "streamLink": "https://open.spotify.com/album/52koatNHePHRWEmmkP0z2Z" + }, + { + "name": "How Could It Be", + "artist": "Eddie Murphy", + "genre": "R&B", + "releaseYear": "1985", + "cover": "covers/eddie-murphy--how-could-it-be.png", + "streamLink": "https://open.spotify.com/album/2ghvihRomDb37X59VK6hp5" + }, + { + "name": "Disconnected", + "artist": "Dry Cell", + "genre": "Nu Metal", + "releaseYear": "2002", + "cover": "covers/dry-cell--disconnected.png", + "streamLink": "https://open.spotify.com/playlist/4UOYLanHctM74mBt1pcdUQ" + }, + { + "name": "Iron Savior", + "artist": "Iron Savior", + "genre": "Power Metal", + "releaseYear": "1997", + "cover": "covers/iron-savior--iron-savior.png", + "streamLink": "https://open.spotify.com/album/2DfiAmdJotkHGxKVgCJgtk" + }, + { + "name": "Give Me Fire", + "artist": "Mando Diao", + "genre": "Indie rock", + "releaseYear": "2009", + "cover": "covers/mando-diao--give-me-fire.png", + "streamLink": "https://open.spotify.com/album/0Z6I8nXSQ5QPfuCPcoXlMj" + }, + { + "name": "The Land of Rape and Honey", + "artist": "Ministry", + "genre": "Industrial Rock", + "releaseYear": "1988", + "cover": "covers/ministry--the-land-of-rape-and-honey.png", + "streamLink": "https://open.spotify.com/album/6TyCJQqyB8OZLhUEPCNgNT" + }, + { + "name": "Zui", + "artist": "Showtaro Morikubo", + "genre": "J-Rock", + "releaseYear": "2001", + "cover": "covers/showtaro-morikubo--zui.png", + "streamLink": "https://www.youtube.com/watch?v=Sncc28xIIIk" + }, + { + "name": "New Clear Days", + "artist": "The Vapors", + "genre": "New Wave", + "releaseYear": "1980", + "cover": "covers/the-vapors--new-clear-days.png", + "streamLink": "https://open.spotify.com/album/0vAu0PT8xKotNhKDzYXJHA" + }, + { + "name": "Symbols", + "artist": "KMDFM", + "genre": "Industrial rock", + "releaseYear": "1997", + "cover": "covers/kmdfm--symbols.png", + "streamLink": "https://open.spotify.com/album/6g99frcxtUThvTjTwo9LfC" + }, + { + "name": "H2O", + "artist": "Hall & Oates", + "genre": "Pop", + "releaseYear": "1983", + "cover": "covers/hall-oates--h2o.png", + "streamLink": "https://open.spotify.com/album/7ygXmT175bKbOpiPjNwXOB" + }, + { + "name": "To Hell with the Devil", + "artist": "Stryper", + "genre": "Christian Metal", + "releaseYear": "1986", + "cover": "covers/stryper--to-hell-with-the-devil.png", + "streamLink": "https://open.spotify.com/album/4LAVjeUmJl3h3U44sMRrfm" + }, + { + "name": "Quadra", + "artist": "Sepultura", + "genre": "Thrash Metal", + "releaseYear": "2020", + "cover": "covers/sepultura--quadra.png", + "streamLink": "https://open.spotify.com/album/1OyRMXY6FZ4cUTTdzCBPSh" + }, + { + "name": "Antichrist Superstar", + "artist": "Marilyn Manson", + "genre": "Industrial Metal", + "releaseYear": "1996", + "cover": "covers/marilyn-manson--antichrist-superstar.png", + "streamLink": "https://open.spotify.com/album/7APnZJwayR3lH9aUDPDYQB" + }, + { + "name": "The Very Best of Kajagoogoo", + "artist": "Kajagoogoo", + "genre": "New Wave", + "releaseYear": "1996", + "cover": "covers/kajagoogoo--the-very-best-of-kajagoogoo.png", + "streamLink": "https://open.spotify.com/album/18QlJWuxHQ1IGQ52qf8T1m" + }, + { + "name": "Liberty", + "artist": "Duran Duran", + "genre": "Pop Rock", + "releaseYear": "1990", + "cover": "covers/duran-duran--liberty.png", + "streamLink": "https://open.spotify.com/album/6xt4fhJG5VevU7fVmqvlO7" + }, + { + "name": "Thank You", + "artist": "Duran Duran", + "genre": "Alternative Rock", + "releaseYear": "1995", + "cover": "covers/duran-duran--thank-you.png", + "streamLink": "https://open.spotify.com/album/2XIlp6UgHAQYNg3OTtoD54" + }, + { + "name": "Paranoid", + "artist": "Black Sabbath", + "genre": "Heavy Metal", + "releaseYear": "1970", + "cover": "covers/black-sabbath--paranoid.png", + "streamLink": "https://open.spotify.com/album/132qAo1cDiEJdA3fv4xyNK" + }, + { + "name": "Master of Reality", + "artist": "Black Sabbath", + "genre": "Heavy Metal", + "releaseYear": "1971", + "cover": "covers/black-sabbath--master-of-reality.png", + "streamLink": "https://open.spotify.com/album/3kBG6q0aXKxzn01wKTwZr5" + }, + { + "name": "Sabotage", + "artist": "Black Sabbath", + "genre": "Heavy Metal", + "releaseYear": "1975", + "cover": "covers/black-sabbath--sabotage.png", + "streamLink": "https://open.spotify.com/album/2hurj4babJXt1cIxmYFqqo" + }, + { + "name": "Vol. 4", + "artist": "Black Sabbath", + "genre": "Heavy Metal", + "releaseYear": "1972", + "cover": "covers/black-sabbath--vol-4.png", + "streamLink": "https://open.spotify.com/album/3iRW4cZOM90lX9Rtc2Qglh" + }, + { + "name": "Kill. Fuck. Die.", + "artist": "W.A.S.P.", + "genre": "Heavy Metal", + "releaseYear": "1997", + "cover": "covers/wasp--kill-fuck-die.png", + "streamLink": "https://www.youtube.com/watch?v=L-V5e6H--eo" + }, + { + "name": "Still Not Black Enough", + "artist": "W.A.S.P.", + "genre": "Heavy Metal", + "releaseYear": "1995", + "cover": "covers/wasp--still-not-black-enough.png", + "streamLink": "https://www.youtube.com/watch?v=JjMBjRG1oSg" + }, + { + "name": "Dirty Deeds Done Dirt Cheap", + "artist": "AC/DC", + "genre": "Hard Rock", + "releaseYear": "1976", + "cover": "covers/acdc--dirty-deeds-done-dirt-cheap.png", + "streamLink": "https://open.spotify.com/album/76mvVgXOde87B9aOzLXCOI" + }, + { + "name": "Let There Be Rock", + "artist": "AC/DC", + "genre": "Hard Rock", + "releaseYear": "1977", + "cover": "covers/acdc--let-there-be-rock.png", + "streamLink": "https://open.spotify.com/album/3JwFNl80WWeXPiKEjIFbqa" + }, + { + "name": "Blackstar", + "artist": "David Bowie", + "genre": "Art Rock", + "releaseYear": "2016", + "cover": "covers/david-bowie--black-star.png", + "streamLink": "https://open.spotify.com/album/2w1YJXWMIco6EBf0CovvVN" + }, + { + "name": "Wisconsin Death Trip", + "artist": "Static X", + "genre": "Industrial Metal", + "releaseYear": "1999", + "cover": "covers/static-x--wisconsin-death-trip.png", + "streamLink": "https://open.spotify.com/album/2WRLwr5MIIXr9gAWOOQ6J5" + }, + { + "name": "ABBA Gold: Greatest Hits", + "artist": "ABBA", + "genre": "Europop", + "releaseYear": "1992", + "cover": "covers/abba--gold-greatest-hits.png", + "streamLink": "https://open.spotify.com/playlist/5zDA9OCLRf44MfKBus4Klj" + }, + { + "name": "Start a War", + "artist": "Static X", + "genre": "Industrial Metal", + "releaseYear": "2005", + "cover": "covers/static-x--start-a-war.png", + "streamLink": "https://open.spotify.com/album/71j3INQJXy1sSQPkPiYxIO" + }, + { + "name": "Rising Force", + "artist": "Yngwie Malmsteen", + "genre": "Neoclassical Metal", + "releaseYear": "1984", + "cover": "covers/yngwie-malmsteen--rising-force.png", + "streamLink": "https://www.youtube.com/watch?v=IVRD3A4XvDQ" + } + ] } \ No newline at end of file diff --git a/js/data/2021.json b/js/data/2021.json index 3449cf7..53998cd 100644 --- a/js/data/2021.json +++ b/js/data/2021.json @@ -1,373 +1,371 @@ { - "year": "2021", - "albums": - [ - { - "name": "Songs From The Big Chair", - "artist": "Tears For Fears", - "genre": "New Wave", - "releaseYear": "1985", - "cover": "covers/tears-for-fears--songs-from-the-big-chair.png", - "streamLink": "https://open.spotify.com/album/3myPwaMYjdwhtq0nFgeG6W" - }, - { - "name": "The Golden Age of Grotesque", - "artist": "Marilyn Manson", - "genre": "Industrial Metal", - "releaseYear": "2003", - "cover": "covers/marilyn-manson--the-golden-age-of-grotesque.png", - "streamLink": "https://open.spotify.com/album/3KExM8E3KgpsS2bHVSJzTc" - }, - { - "name": "Gone to Earth", - "artist": "David Sylvian", - "genre": "Art Rock", - "releaseYear": "1986", - "cover": "covers/david-sylvian--gone-to-earth.png", - "streamLink": "https://open.spotify.com/album/3CRipGCmcoBTKdadiYIMOc" - }, - { - "name": "Forever Young", - "artist": "Alphaville", - "genre": "Synth-pop", - "releaseYear": "1984", - "cover": "covers/alphaville--forever-young.png", - "streamLink": "https://open.spotify.com/album/2256qKBSQdt53T5dz4Kdcs" - }, - { - "name": "Charmed Life", - "artist": "Billy Idol", - "genre": "Hard Rock", - "releaseYear": "1990", - "cover": "covers/billy-idol--charmed-life.png", - "streamLink": "https://open.spotify.com/album/4GCciwt8efweJZ4AEEvnTQ" - }, - { - "name": "Brilliant Trees", - "artist": "David Sylvian", - "genre": "Art Rock", - "releaseYear": "1984", - "cover": "covers/david-sylvian--brilliant-trees.png", - "streamLink": "https://open.spotify.com/album/5YIZcFDFKpUrcqviez8QWn" - }, - { - "name": "Titles", - "artist": "Mick Karn", - "genre": "New Wave", - "releaseYear": "1982", - "cover": "covers/mick-karn--titles.png", - "streamLink": "https://open.spotify.com/album/1YzmqulzOFRRpYguPJHRph" - }, - { - "name": "Narita", - "artist": "Riot", - "genre": "Heavy Metal", - "releaseYear": "1979", - "cover": "covers/riot--narita.png", - "streamLink": "https://open.spotify.com/album/5FFHPpaALLbcgBEeqHTG0q" - }, - { - "name": "Bu-ikikaesu", - "artist": "Maximum the Hormone", - "genre": "Nu Metal", - "releaseYear": "2007", - "cover": "covers/maximum-the-hormone--bu-ikikaesu.png", - "streamLink": "https://open.spotify.com/album/43KD7ooLIEkXriTaZA4drI" - }, - { - "name": "A Flock of Seagulls", - "artist": "A Flock of Seagulls", - "genre": "New Wave", - "releaseYear": "1982", - "cover": "covers/a-flock-of-seagulls--a-flock-of-seagulls.png", - "streamLink": "https://open.spotify.com/album/1hwPP3qgnV7PQrMSy6qFw8" - }, - { - "name": "The Best of the Best 1984–2000", - "artist": "W.A.S.P.", - "genre": "Heavy Metal", - "releaseYear": "2000", - "cover": "covers/wasp--the-best-of-the-best.png", - "streamLink": "https://open.spotify.com/album/1DtY5qcR2F8RB3r5Wrty3y" - }, - { - "name": "Tubular Bells II", - "artist": "Mike Oldfield", - "genre": "Progressive Rock", - "releaseYear": "1992", - "cover": "covers/mike-oldfield--tubular-bells-ii.png", - "streamLink": "https://open.spotify.com/album/0Z9Uio2xZCDztGCuozTPaH" - }, - { - "name": "Ecco The Dolphin", - "artist": "Spencer Nilsen (SEGA)", - "genre": "Video Game Soundtrack", - "releaseYear": "1992", - "cover": "covers/spencer-nilsen--echo-the-dolphin.png", - "streamLink": "https://www.youtube.com/watch?v=tqMuvFEKCOk" - }, - { - "name": "Two Sides of the Metal", - "artist": "Fortuner", - "genre": "Heavy Metal", - "releaseYear": "1986", - "cover": "covers/fortuner--two-sides-of-metal.png", - "streamLink": "https://www.youtube.com/watch?v=lyaV2wGeGX8" - }, - { - "name": "Tubular Bells III", - "artist": "Mike Oldfield", - "genre": "New-age", - "releaseYear": "1998", - "cover": "covers/mike-oldfield--tubular-bells-iii.png", - "streamLink": "https://open.spotify.com/album/3DSrfmHKb8WWgrX1Mvsx6K" - }, - { - "name": "Don't Tread", - "artist": "Damn Yankees", - "genre": "Hard Rock", - "releaseYear": "1992", - "cover": "covers/damn-yankees--dont-tread.png", - "streamLink": "https://open.spotify.com/album/6UyUf2nDnmV2CR36zgThs8" - }, - { - "name": "Contraband", - "artist": "Velvet Revolver", - "genre": "Hard Rock", - "releaseYear": "2004", - "cover": "covers/velvet-revolver--contraband.png", - "streamLink": "https://open.spotify.com/album/64GnrmrpL1fvfF0r1AoZLB" - }, - { - "name": "Libertad", - "artist": "Velvet Revolver", - "genre": "Hard Rock", - "releaseYear": "2007", - "cover": "covers/velvet-revolver--libertad.png", - "streamLink": "https://open.spotify.com/album/2mFnAf5xnMOs1LBS4qRy5R" - }, - { - "name": "Dream Police", - "artist": "Cheap Trick", - "genre": "Power Pop", - "releaseYear": "1979", - "cover": "covers/cheap-trick--dream-police.png", - "streamLink": "https://open.spotify.com/album/66sGbldg4VPdY70IcPdxtE" - }, - { - "name": "Heaven Tonight", - "artist": "Cheap Trick", - "genre": "Hard Rock", - "releaseYear": "1978", - "cover": "covers/cheap-trick--heaven-tonight.png", - "streamLink": "https://open.spotify.com/album/5w20U3G3GyWiPvvDeVzkhN" - }, - { - "name": "My Generation - The Very Best Of", - "artist": "The Who", - "genre": "Rock", - "releaseYear": "1996", - "cover": "covers/the-who--the-very-best-of-the-who.png", - "streamLink": "https://open.spotify.com/playlist/7b8Awei9i61K9Qzfd1mcu1" - }, - { - "name": "Grand Funk Hits", - "artist": "Grand Funk Railroad", - "genre": "Rock", - "releaseYear": "1976", - "cover": "covers/grand-funk-railroad--grand-funk-hits.png", - "streamLink": "https://open.spotify.com/album/4HmWOsD5ggw9It34pM7nUf" - }, - { - "name": "Loverboy Classics", - "artist": "Loverboy", - "genre": "Rock", - "releaseYear": "1994", - "cover": "covers/loverboy--loverboy-classics.png" - }, - { - "name": "The Very Best of Asia", - "artist": "Asia", - "genre": "Progressive Rock", - "releaseYear": "2000", - "cover": "covers/asia--the-very-best-of-asia.png", - "streamLink": "https://open.spotify.com/album/7eSzBoyCbM0qTOtuSKmWzO" - }, - { - "name": "Devil's Night", - "artist": "D12", - "genre": "Hardcore Hip Hop", - "releaseYear": "2001", - "cover": "covers/d12--devils-night.png", - "streamLink": "https://open.spotify.com/album/22CVoj4sxsAGO02OONbkQA" - }, - { - "name": "Helloween", - "artist": "Helloween", - "genre": "Power Metal", - "releaseYear": "2021", - "cover": "covers/helloween-helloween.png", - "streamLink": "https://open.spotify.com/album/1qHRm0MRGDZczHeggdvWDe" - }, - { - "name": "Mass Effect", - "artist": "Jack Wall & Sam Hulick", - "genre": "Video Game Music", - "releaseYear": "2007", - "cover": "covers/mass-effect.png", - "streamLink": "https://open.spotify.com/album/3BTF9q997KuKxN9JgOBn7g" - }, - { - "name": "Crises", - "artist": "Mike Oldfield", - "genre": "Progressive Rock", - "releaseYear": "1983", - "cover": "covers/mike-oldfield--crises.png", - "streamLink": "https://open.spotify.com/album/0LV4hwe1982xjN0bVBhpFw" - }, - { - "name": "Five Miles Out", - "artist": "Mike Oldfield", - "genre": "Progressive Rock", - "releaseYear": "1982", - "cover": "covers/mike-oldfield--five-miles-out.png", - "streamLink": "https://open.spotify.com/album/1NqFhS3YNSTxowqOJ0TjOR" - }, - { - "name": "Night Time", - "artist": "Killing Joke", - "genre": "Post-Punk", - "releaseYear": "1985", - "cover": "covers/killing-joke--night-time.png", - "streamLink": "https://open.spotify.com/album/2qcwXvluk9iFwNNg4eDBXm" - }, - { - "name": "Discovery", - "artist": "Mike Oldfield", - "genre": "Progressive Rock", - "releaseYear": "1984", - "cover": "covers/mike-oldfield--discovery.png", - "streamLink": "https://open.spotify.com/album/6ipA0yGZ9puU2mu8oKIw8e" - }, - { - "name": "Astronaut", - "artist": "Duran Duran", - "genre": "New Wave", - "releaseYear": "2004", - "cover": "covers/duran-duran--astronaut.png", - "streamLink": "https://open.spotify.com/album/75rfhN25yK4vx65OleViI5" - }, - { - "name": "Weezer (Green Album)", - "artist": "Weezer", - "genre": "Power Pop", - "releaseYear": "2001", - "cover": "covers/weezer--green-album.png", - "streamLink": "https://open.spotify.com/album/2OBSz5Nlto0Q5CtYPzPY7c" - }, - { - "name": "The Essential Men at Work", - "artist": "Men at Work", - "genre": "Rock", - "releaseYear": "2003", - "cover": "covers/men-at-work--the-essential-men-at-work.png", - "streamLink": "https://open.spotify.com/album/30aG9Rjezn1vxaYXrB8j3d" - }, - { - "name": "Flood", - "artist": "Jocelyn Pook", - "genre": "Classical", - "releaseYear": "1999", - "cover": "covers/jocelyn-pook--flood.png", - "streamLink": "https://open.spotify.com/album/683eQCMyQNT6JCwfoL6Euk" - }, - { - "name": "Medazzaland", - "artist": "Duran Duran", - "genre": "New Wave", - "releaseYear": "1997", - "cover": "covers/duran-duran--medazzaland.png", - "streamLink": "https://open.spotify.com/album/1rMGT0Sj0aFPvZxIvoNYfp" - }, - { - "name": "Blue Murder", - "artist": "Blue Murder", - "genre": "Hard Rock", - "releaseYear": "1989", - "cover": "covers/blue-murder--blue-murder.png", - "streamLink": "https://open.spotify.com/album/2YKZOMLSEXv8TbToLggMBX" - }, - { - "name": "Studio Sessions", - "artist": "Grand Slam", - "genre": "Rock", - "releaseYear": "1984", - "cover": "covers/grand-slam--studio-sessions.png", - "streamLink": "https://www.youtube.com/watch?v=qkE4OMCuRlM" - }, - { - "name": "Shadow King", - "artist": "Shadow King", - "genre": "Rock", - "releaseYear": "1991", - "cover": "covers/shadow-king--shadow-king.png", - "streamLink": "https://open.spotify.com/album/7bM3oG9PS37XyQJ6qmtdt5" - }, - { - "name": "Fight for the Rock", - "artist": "Savatage", - "genre": "Heavy Metal", - "releaseYear": "1986", - "cover": "covers/savatage--fight-for-the-rock.png", - "streamLink": "https://open.spotify.com/album/1jKevVsn1Z1NqplGevM8Sj" - }, - { - "name": "Future Past", - "artist": "Duran Duran", - "genre": "New Wave", - "releaseYear": "2021", - "cover": "covers/duran-duran--future-past.png", - "streamLink": "https://open.spotify.com/album/7GyGHJ1jv0v2Sa0pcgs4fD" - }, - { - "name": "Polytown", - "artist": "David Torn, Mick Karn, Terry Bozzio", - "genre": "Progressive Rock", - "releaseYear": "1994", - "cover": "covers/david-torn-mick-karn-terry-bozzio--polytown.png", - "streamLink": "https://www.youtube.com/watch?v=ydevAdaewSo&list=PLCbkNSGNbMI4Gwfat1A54J42WScVEDh1C" - }, - { - "name": "A Tribute To Japan: Life In Tokyo", - "artist": "Various", - "genre": "Electronic", - "releaseYear": "1996", - "cover": "covers/various--a-tribute-to-japan-life-in-tokyo.png", - "streamLink": "" - }, - { - "name": "Sahara Elektrik", - "artist": "Dissidenten And Lem Chaheb", - "genre": "Electronic", - "releaseYear": "1984", - "cover": "covers/dissidenten-lem-chaheb--sahara-elektrik.png", - "streamLink": "https://open.spotify.com/album/3Vl1cnMHIBciZDPwmfZAk5" - }, - { - "name": "Upstairs at Eric's", - "artist": "Yazoo", - "genre": "Synthpop", - "releaseYear": "1982", - "cover": "covers/yazoo--upstairs-at-erics.png", - "streamLink": "https://open.spotify.com/album/7ANiOkCxzT2FOeS5qS5bkF" - }, - { - "name": "You and Me Both", - "artist": "Yazoo", - "genre": "Synthpop", - "releaseYear": "1983", - "cover": "covers/yazoo--you-and-me-both.png", - "streamLink": "https://open.spotify.com/album/3d36GcutOX3wL0Ap1OcDf2" - } - ] + "year": "2021", + "albums": [{ + "name": "Songs From The Big Chair", + "artist": "Tears For Fears", + "genre": "New Wave", + "releaseYear": "1985", + "cover": "covers/tears-for-fears--songs-from-the-big-chair.png", + "streamLink": "https://open.spotify.com/album/3myPwaMYjdwhtq0nFgeG6W" + }, + { + "name": "The Golden Age of Grotesque", + "artist": "Marilyn Manson", + "genre": "Industrial Metal", + "releaseYear": "2003", + "cover": "covers/marilyn-manson--the-golden-age-of-grotesque.png", + "streamLink": "https://open.spotify.com/album/3KExM8E3KgpsS2bHVSJzTc" + }, + { + "name": "Gone to Earth", + "artist": "David Sylvian", + "genre": "Art Rock", + "releaseYear": "1986", + "cover": "covers/david-sylvian--gone-to-earth.png", + "streamLink": "https://open.spotify.com/album/3CRipGCmcoBTKdadiYIMOc" + }, + { + "name": "Forever Young", + "artist": "Alphaville", + "genre": "Synth-pop", + "releaseYear": "1984", + "cover": "covers/alphaville--forever-young.png", + "streamLink": "https://open.spotify.com/album/2256qKBSQdt53T5dz4Kdcs" + }, + { + "name": "Charmed Life", + "artist": "Billy Idol", + "genre": "Hard Rock", + "releaseYear": "1990", + "cover": "covers/billy-idol--charmed-life.png", + "streamLink": "https://open.spotify.com/album/4GCciwt8efweJZ4AEEvnTQ" + }, + { + "name": "Brilliant Trees", + "artist": "David Sylvian", + "genre": "Art Rock", + "releaseYear": "1984", + "cover": "covers/david-sylvian--brilliant-trees.png", + "streamLink": "https://open.spotify.com/album/5YIZcFDFKpUrcqviez8QWn" + }, + { + "name": "Titles", + "artist": "Mick Karn", + "genre": "New Wave", + "releaseYear": "1982", + "cover": "covers/mick-karn--titles.png", + "streamLink": "https://open.spotify.com/album/1YzmqulzOFRRpYguPJHRph" + }, + { + "name": "Narita", + "artist": "Riot", + "genre": "Heavy Metal", + "releaseYear": "1979", + "cover": "covers/riot--narita.png", + "streamLink": "https://open.spotify.com/album/5FFHPpaALLbcgBEeqHTG0q" + }, + { + "name": "Bu-ikikaesu", + "artist": "Maximum the Hormone", + "genre": "Nu Metal", + "releaseYear": "2007", + "cover": "covers/maximum-the-hormone--bu-ikikaesu.png", + "streamLink": "https://open.spotify.com/album/43KD7ooLIEkXriTaZA4drI" + }, + { + "name": "A Flock of Seagulls", + "artist": "A Flock of Seagulls", + "genre": "New Wave", + "releaseYear": "1982", + "cover": "covers/a-flock-of-seagulls--a-flock-of-seagulls.png", + "streamLink": "https://open.spotify.com/album/1hwPP3qgnV7PQrMSy6qFw8" + }, + { + "name": "The Best of the Best 1984–2000", + "artist": "W.A.S.P.", + "genre": "Heavy Metal", + "releaseYear": "2000", + "cover": "covers/wasp--the-best-of-the-best.png", + "streamLink": "https://open.spotify.com/album/1DtY5qcR2F8RB3r5Wrty3y" + }, + { + "name": "Tubular Bells II", + "artist": "Mike Oldfield", + "genre": "Progressive Rock", + "releaseYear": "1992", + "cover": "covers/mike-oldfield--tubular-bells-ii.png", + "streamLink": "https://open.spotify.com/album/0Z9Uio2xZCDztGCuozTPaH" + }, + { + "name": "Ecco The Dolphin", + "artist": "Spencer Nilsen (SEGA)", + "genre": "Video Game Soundtrack", + "releaseYear": "1992", + "cover": "covers/spencer-nilsen--echo-the-dolphin.png", + "streamLink": "https://www.youtube.com/watch?v=tqMuvFEKCOk" + }, + { + "name": "Two Sides of the Metal", + "artist": "Fortuner", + "genre": "Heavy Metal", + "releaseYear": "1986", + "cover": "covers/fortuner--two-sides-of-metal.png", + "streamLink": "https://www.youtube.com/watch?v=lyaV2wGeGX8" + }, + { + "name": "Tubular Bells III", + "artist": "Mike Oldfield", + "genre": "New-age", + "releaseYear": "1998", + "cover": "covers/mike-oldfield--tubular-bells-iii.png", + "streamLink": "https://open.spotify.com/album/3DSrfmHKb8WWgrX1Mvsx6K" + }, + { + "name": "Don't Tread", + "artist": "Damn Yankees", + "genre": "Hard Rock", + "releaseYear": "1992", + "cover": "covers/damn-yankees--dont-tread.png", + "streamLink": "https://open.spotify.com/album/6UyUf2nDnmV2CR36zgThs8" + }, + { + "name": "Contraband", + "artist": "Velvet Revolver", + "genre": "Hard Rock", + "releaseYear": "2004", + "cover": "covers/velvet-revolver--contraband.png", + "streamLink": "https://open.spotify.com/album/64GnrmrpL1fvfF0r1AoZLB" + }, + { + "name": "Libertad", + "artist": "Velvet Revolver", + "genre": "Hard Rock", + "releaseYear": "2007", + "cover": "covers/velvet-revolver--libertad.png", + "streamLink": "https://open.spotify.com/album/2mFnAf5xnMOs1LBS4qRy5R" + }, + { + "name": "Dream Police", + "artist": "Cheap Trick", + "genre": "Power Pop", + "releaseYear": "1979", + "cover": "covers/cheap-trick--dream-police.png", + "streamLink": "https://open.spotify.com/album/66sGbldg4VPdY70IcPdxtE" + }, + { + "name": "Heaven Tonight", + "artist": "Cheap Trick", + "genre": "Hard Rock", + "releaseYear": "1978", + "cover": "covers/cheap-trick--heaven-tonight.png", + "streamLink": "https://open.spotify.com/album/5w20U3G3GyWiPvvDeVzkhN" + }, + { + "name": "My Generation - The Very Best Of", + "artist": "The Who", + "genre": "Rock", + "releaseYear": "1996", + "cover": "covers/the-who--the-very-best-of-the-who.png", + "streamLink": "https://open.spotify.com/playlist/7b8Awei9i61K9Qzfd1mcu1" + }, + { + "name": "Grand Funk Hits", + "artist": "Grand Funk Railroad", + "genre": "Rock", + "releaseYear": "1976", + "cover": "covers/grand-funk-railroad--grand-funk-hits.png", + "streamLink": "https://open.spotify.com/album/4HmWOsD5ggw9It34pM7nUf" + }, + { + "name": "Loverboy Classics", + "artist": "Loverboy", + "genre": "Rock", + "releaseYear": "1994", + "cover": "covers/loverboy--loverboy-classics.png" + }, + { + "name": "The Very Best of Asia", + "artist": "Asia", + "genre": "Progressive Rock", + "releaseYear": "2000", + "cover": "covers/asia--the-very-best-of-asia.png", + "streamLink": "https://open.spotify.com/album/7eSzBoyCbM0qTOtuSKmWzO" + }, + { + "name": "Devil's Night", + "artist": "D12", + "genre": "Hardcore Hip Hop", + "releaseYear": "2001", + "cover": "covers/d12--devils-night.png", + "streamLink": "https://open.spotify.com/album/22CVoj4sxsAGO02OONbkQA" + }, + { + "name": "Helloween", + "artist": "Helloween", + "genre": "Power Metal", + "releaseYear": "2021", + "cover": "covers/helloween-helloween.png", + "streamLink": "https://open.spotify.com/album/1qHRm0MRGDZczHeggdvWDe" + }, + { + "name": "Mass Effect", + "artist": "Jack Wall & Sam Hulick", + "genre": "Video Game Music", + "releaseYear": "2007", + "cover": "covers/mass-effect.png", + "streamLink": "https://open.spotify.com/album/3BTF9q997KuKxN9JgOBn7g" + }, + { + "name": "Crises", + "artist": "Mike Oldfield", + "genre": "Progressive Rock", + "releaseYear": "1983", + "cover": "covers/mike-oldfield--crises.png", + "streamLink": "https://open.spotify.com/album/0LV4hwe1982xjN0bVBhpFw" + }, + { + "name": "Five Miles Out", + "artist": "Mike Oldfield", + "genre": "Progressive Rock", + "releaseYear": "1982", + "cover": "covers/mike-oldfield--five-miles-out.png", + "streamLink": "https://open.spotify.com/album/1NqFhS3YNSTxowqOJ0TjOR" + }, + { + "name": "Night Time", + "artist": "Killing Joke", + "genre": "Post-Punk", + "releaseYear": "1985", + "cover": "covers/killing-joke--night-time.png", + "streamLink": "https://open.spotify.com/album/2qcwXvluk9iFwNNg4eDBXm" + }, + { + "name": "Discovery", + "artist": "Mike Oldfield", + "genre": "Progressive Rock", + "releaseYear": "1984", + "cover": "covers/mike-oldfield--discovery.png", + "streamLink": "https://open.spotify.com/album/6ipA0yGZ9puU2mu8oKIw8e" + }, + { + "name": "Astronaut", + "artist": "Duran Duran", + "genre": "New Wave", + "releaseYear": "2004", + "cover": "covers/duran-duran--astronaut.png", + "streamLink": "https://open.spotify.com/album/75rfhN25yK4vx65OleViI5" + }, + { + "name": "Weezer (Green Album)", + "artist": "Weezer", + "genre": "Power Pop", + "releaseYear": "2001", + "cover": "covers/weezer--green-album.png", + "streamLink": "https://open.spotify.com/album/2OBSz5Nlto0Q5CtYPzPY7c" + }, + { + "name": "The Essential Men at Work", + "artist": "Men at Work", + "genre": "Rock", + "releaseYear": "2003", + "cover": "covers/men-at-work--the-essential-men-at-work.png", + "streamLink": "https://open.spotify.com/album/30aG9Rjezn1vxaYXrB8j3d" + }, + { + "name": "Flood", + "artist": "Jocelyn Pook", + "genre": "Classical", + "releaseYear": "1999", + "cover": "covers/jocelyn-pook--flood.png", + "streamLink": "https://open.spotify.com/album/683eQCMyQNT6JCwfoL6Euk" + }, + { + "name": "Medazzaland", + "artist": "Duran Duran", + "genre": "New Wave", + "releaseYear": "1997", + "cover": "covers/duran-duran--medazzaland.png", + "streamLink": "https://open.spotify.com/album/1rMGT0Sj0aFPvZxIvoNYfp" + }, + { + "name": "Blue Murder", + "artist": "Blue Murder", + "genre": "Hard Rock", + "releaseYear": "1989", + "cover": "covers/blue-murder--blue-murder.png", + "streamLink": "https://open.spotify.com/album/2YKZOMLSEXv8TbToLggMBX" + }, + { + "name": "Studio Sessions", + "artist": "Grand Slam", + "genre": "Rock", + "releaseYear": "1984", + "cover": "covers/grand-slam--studio-sessions.png", + "streamLink": "https://www.youtube.com/watch?v=qkE4OMCuRlM" + }, + { + "name": "Shadow King", + "artist": "Shadow King", + "genre": "Rock", + "releaseYear": "1991", + "cover": "covers/shadow-king--shadow-king.png", + "streamLink": "https://open.spotify.com/album/7bM3oG9PS37XyQJ6qmtdt5" + }, + { + "name": "Fight for the Rock", + "artist": "Savatage", + "genre": "Heavy Metal", + "releaseYear": "1986", + "cover": "covers/savatage--fight-for-the-rock.png", + "streamLink": "https://open.spotify.com/album/1jKevVsn1Z1NqplGevM8Sj" + }, + { + "name": "Future Past", + "artist": "Duran Duran", + "genre": "New Wave", + "releaseYear": "2021", + "cover": "covers/duran-duran--future-past.png", + "streamLink": "https://open.spotify.com/album/7GyGHJ1jv0v2Sa0pcgs4fD" + }, + { + "name": "Polytown", + "artist": "David Torn, Mick Karn, Terry Bozzio", + "genre": "Progressive Rock", + "releaseYear": "1994", + "cover": "covers/david-torn-mick-karn-terry-bozzio--polytown.png", + "streamLink": "https://www.youtube.com/watch?v=ydevAdaewSo&list=PLCbkNSGNbMI4Gwfat1A54J42WScVEDh1C" + }, + { + "name": "A Tribute To Japan: Life In Tokyo", + "artist": "Various", + "genre": "Electronic", + "releaseYear": "1996", + "cover": "covers/various--a-tribute-to-japan-life-in-tokyo.png", + "streamLink": "" + }, + { + "name": "Sahara Elektrik", + "artist": "Dissidenten And Lem Chaheb", + "genre": "Electronic", + "releaseYear": "1984", + "cover": "covers/dissidenten-lem-chaheb--sahara-elektrik.png", + "streamLink": "https://open.spotify.com/album/3Vl1cnMHIBciZDPwmfZAk5" + }, + { + "name": "Upstairs at Eric's", + "artist": "Yazoo", + "genre": "Synthpop", + "releaseYear": "1982", + "cover": "covers/yazoo--upstairs-at-erics.png", + "streamLink": "https://open.spotify.com/album/7ANiOkCxzT2FOeS5qS5bkF" + }, + { + "name": "You and Me Both", + "artist": "Yazoo", + "genre": "Synthpop", + "releaseYear": "1983", + "cover": "covers/yazoo--you-and-me-both.png", + "streamLink": "https://open.spotify.com/album/3d36GcutOX3wL0Ap1OcDf2" + } + ] } \ No newline at end of file diff --git a/js/data/2022.json b/js/data/2022.json index 6b0b48b..ae249f7 100644 --- a/js/data/2022.json +++ b/js/data/2022.json @@ -1,44 +1,52 @@ { - "year": "2022", - "albums": [{ - "name": "Self-Titled", - "artist": "Rage Against the Machine", - "genre": "Rap Metal", - "releaseYear": "1992", - "cover": "covers/rage-against-the-machine.png", - "streamLink": "https://open.spotify.com/album/4LaRYkT4oy47wEuQgkLBul" - }, - { - "name": "Raoul and the Kings of Spain", - "artist": "Tears For Fears", - "genre": "Pop Rock", - "releaseYear": "1995", - "cover": "covers/tears-for-fears--raoul-and-the-kings-of-spain.png", - "streamLink": "https://open.spotify.com/album/3bPkPFjOJGlbC52nQiqnFZ" - }, - { - "name": "System of A Down", - "artist": "Toxicity", - "genre": "Alternative Metal", - "releaseYear": "2001", - "cover": "covers/system-of-a-down--toxicity.png", - "streamLink": "https://open.spotify.com/album/6jWde94ln40epKIQCd8XUh" - }, - { - "name": "Generation X", - "artist": "Generation X", - "genre": "Punk", - "releaseYear": "1977", - "cover": "covers/generation-x--generation-x.png", - "streamLink": "https://open.spotify.com/album/3ROCE9iLv47ne4IlwNpkuu" - }, - { - "name": "Valley of the Dolls", - "artist": "Generation X", - "genre": "Rock", - "releaseYear": "1979", - "cover": "covers/generation-x--valley-of-the-dolls.png", - "streamLink": "https://open.spotify.com/album/1bMKVNm2eM71Nv7ToNnWeN" - } - ] + "year": "2022", + "albums": [{ + "name": "Self-Titled", + "artist": "Rage Against the Machine", + "genre": "Rap Metal", + "releaseYear": "1992", + "cover": "covers/rage-against-the-machine.png", + "streamLink": "https://open.spotify.com/album/4LaRYkT4oy47wEuQgkLBul" + }, + { + "name": "Raoul and the Kings of Spain", + "artist": "Tears For Fears", + "genre": "Pop Rock", + "releaseYear": "1995", + "cover": "covers/tears-for-fears--raoul-and-the-kings-of-spain.png", + "streamLink": "https://open.spotify.com/album/3bPkPFjOJGlbC52nQiqnFZ" + }, + { + "name": "System of A Down", + "artist": "Toxicity", + "genre": "Alternative Metal", + "releaseYear": "2001", + "cover": "covers/system-of-a-down--toxicity.png", + "streamLink": "https://open.spotify.com/album/6jWde94ln40epKIQCd8XUh" + }, + { + "name": "Generation X", + "artist": "Generation X", + "genre": "Punk", + "releaseYear": "1977", + "cover": "covers/generation-x--generation-x.png", + "streamLink": "https://open.spotify.com/album/3ROCE9iLv47ne4IlwNpkuu" + }, + { + "name": "Valley of the Dolls", + "artist": "Generation X", + "genre": "Rock", + "releaseYear": "1979", + "cover": "covers/generation-x--valley-of-the-dolls.png", + "streamLink": "https://open.spotify.com/album/1bMKVNm2eM71Nv7ToNnWeN" + }, + { + "name": "Kiss Me Deadly", + "artist": "Gen X", + "genre": "New Wave", + "releaseYear": "1981", + "cover": "covers/gen-x--kiss-me-deadly.png", + "streamLink": "https://open.spotify.com/album/67Ee6sSx28m3wFS6EUZGpB" + } + ] } \ No newline at end of file diff --git a/js/listened-albums.js b/js/listened-albums.js index 7b258e2..1e54278 100644 --- a/js/listened-albums.js +++ b/js/listened-albums.js @@ -8,61 +8,61 @@ const keywordsInput = document.querySelector("#keywords_input"); const propertySelect = document.querySelector("#property_select"); let listYears = []; const dataUrls = [ - 'js/data/2019.json', - 'js/data/2020.json', - 'js/data/2021.json', - 'js/data/2022.json', + 'js/data/2019.json', + 'js/data/2020.json', + 'js/data/2021.json', + 'js/data/2022.json', ]; // EVENTS $(document).ready(() => { - loadJsonData(0); + loadJsonData(0); - keywordsInput.addEventListener('keyup', function () { - triggerSearch(this.value); - }); + keywordsInput.addEventListener('keyup', function () { + triggerSearch(this.value); + }); - propertySelect.addEventListener('change', () => triggerSearch(keywordsInput.value)); + propertySelect.addEventListener('change', () => triggerSearch(keywordsInput.value)); - albumHeader.innerHTML = 'Latest entries:'; - bindHeadersClick(); + albumHeader.innerHTML = 'Latest entries:'; + bindHeadersClick(); }); // HELPER FUNCTIONS function loadJsonData(index) { - if (dataUrls.length === index) { - listYears = listYears.reverse(); - listYears.forEach((item, currentIndex) => { - listAll(item, (currentIndex == 0)); - }); + if (dataUrls.length === index) { + listYears = listYears.reverse(); + listYears.forEach((item, currentIndex) => { + listAll(item, (currentIndex == 0)); + }); - bindHeadersClick(); - return; - } - - fetch(dataUrls[index]).then(response => { - if (response.ok) { - response.json().then(json => { - json.albums = json.albums.reverse(); - listYears.push(json); - loadJsonData(++index); - }); - } else { - console.error('Do something with error'); - } - }) - .catch(error => console.error('Do something with error', error)); + bindHeadersClick(); + return; + } + + fetch(dataUrls[index]).then(response => { + if (response.ok) { + response.json().then(json => { + json.albums = json.albums.reverse(); + listYears.push(json); + loadJsonData(++index); + }); + } else { + console.error('Do something with error'); + } + }) + .catch(error => console.error('Do something with error', error)); } function listAll(item, toShow) { - let contentLength = item.albums.length; + let contentLength = item.albums.length; - // New year container - yearContainer.innerHTML += - `
+ // New year container + yearContainer.innerHTML += + `

${item.year} - ${contentLength >= 1 ? contentLength + ' album(s) ' : 'Not found'}

@@ -76,14 +76,14 @@ function listAll(item, toShow) {
`; - // List albums content - let albumContainer = document.querySelector('#albums_container_' + item.year); - albumContainer.innerHTML = ''; - item.albums.forEach((album) => { - const fullDescription = `${album.artist} - ${album.name}`; - const linkTag = (album.streamLink ? ` Listen ` : ''); - albumContainer.innerHTML += - `
+ // List albums content + let albumContainer = document.querySelector('#albums_container_' + item.year); + albumContainer.innerHTML = ''; + item.albums.forEach((album) => { + const fullDescription = `${album.artist} - ${album.name}`; + const linkTag = (album.streamLink ? ` Listen ` : ''); + albumContainer.innerHTML += + `
@@ -97,50 +97,50 @@ function listAll(item, toShow) {
`; - }); + }); } function filterList(property, searchString) { - let filteredYears = []; - let total = 0; - listYears.forEach((item) => { - let filtered = getFiltered(item, property, searchString); - filteredYears.push(filtered); - total += filtered.albums.length; - }); - - yearContainer.innerHTML = ''; - albumHeader.innerHTML = (total >= 1 ? `${total} occurrence(s) found including '${searchString}'` : 'Nothing was found'); - filteredYears.forEach((item) => listAll(item, true)); - - bindHeadersClick(); + let filteredYears = []; + let total = 0; + listYears.forEach((item) => { + let filtered = getFiltered(item, property, searchString); + filteredYears.push(filtered); + total += filtered.albums.length; + }); + + yearContainer.innerHTML = ''; + albumHeader.innerHTML = (total >= 1 ? `${total} occurrence(s) found including '${searchString}'` : 'Nothing was found'); + filteredYears.forEach((item) => listAll(item, true)); + + bindHeadersClick(); } function getFiltered(item, property, searchString) { - return { - year: item.year, - albums: item.albums.filter(album => album[property].toString().toLowerCase().includes(searchString.toLowerCase())) - }; + return { + year: item.year, + albums: item.albums.filter(album => album[property].toString().toLowerCase().includes(searchString.toLowerCase())) + }; } function triggerSearch(value) { - if (value !== '') { - const property = propertySelect[propertySelect.selectedIndex].value; - const searchString = value; - filterList(property, searchString); - } else { - yearContainer.innerHTML = ''; - albumHeader.innerHTML = 'Latest entries:'; - listYears.forEach((item, index) => listAll(item, (index === 0))); - - bindHeadersClick(); - } + if (value !== '') { + const property = propertySelect[propertySelect.selectedIndex].value; + const searchString = value; + filterList(property, searchString); + } else { + yearContainer.innerHTML = ''; + albumHeader.innerHTML = 'Latest entries:'; + listYears.forEach((item, index) => listAll(item, (index === 0))); + + bindHeadersClick(); + } } function bindHeadersClick() { - const headers = document.querySelectorAll('div.accordion .card-header'); - headers.forEach((header) => { - let content = header.parentElement.querySelector('.card-content'); - $(header).on('click', () => $(content).toggle('slow', null)); - }); + const headers = document.querySelectorAll('div.accordion .card-header'); + headers.forEach((header) => { + let content = header.parentElement.querySelector('.card-content'); + $(header).on('click', () => $(content).toggle('slow', null)); + }); } \ No newline at end of file