Compare commits
10 commits
1ffd50975d
...
5995bdd157
Author | SHA1 | Date | |
---|---|---|---|
|
5995bdd157 | ||
|
3c28bd4b3f | ||
|
f74684c306 | ||
|
cf112d7d29 | ||
|
6e7704157c | ||
|
e18d6a3dab | ||
|
0e000ece3a | ||
|
4ac3281f35 | ||
|
108f4734a2 | ||
|
76a8ebfc68 |
|
@ -1,55 +1,64 @@
|
|||
@import url("https://fonts.googleapis.com/css2?family=Orbitron&display=swap");
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0; }
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/* Hide scrollbar for Chrome, Safari and Opera */
|
||||
::-webkit-scrollbar {
|
||||
display: none; }
|
||||
display: none;
|
||||
}
|
||||
|
||||
body {
|
||||
background: #000;
|
||||
color: #fff;
|
||||
font-family: 'Orbitron', sans-serif;
|
||||
font-family: "Orbitron", sans-serif;
|
||||
-ms-overflow-style: none;
|
||||
/* IE and Edge */
|
||||
scrollbar-width: none;
|
||||
/* Firefox */ }
|
||||
}
|
||||
|
||||
.logo {
|
||||
width: 150px;
|
||||
text-align: center;
|
||||
margin: auto;
|
||||
justify-content: center;
|
||||
display: flex; }
|
||||
display: flex;
|
||||
}
|
||||
|
||||
a {
|
||||
color: white;
|
||||
font-size: 2vw;
|
||||
text-decoration: none; }
|
||||
a:hover {
|
||||
color: grey; }
|
||||
text-decoration: none;
|
||||
}
|
||||
a:hover {
|
||||
color: grey;
|
||||
}
|
||||
|
||||
.twitch svg:hover {
|
||||
fill: #9146FF; }
|
||||
fill: #9146FF;
|
||||
}
|
||||
|
||||
.twitter svg:hover {
|
||||
fill: #1DA1F2; }
|
||||
fill: #1DA1F2;
|
||||
}
|
||||
|
||||
.instagram svg:hover {
|
||||
fill: #E4405F; }
|
||||
fill: #E4405F;
|
||||
}
|
||||
|
||||
svg {
|
||||
fill: white;
|
||||
padding: 0 10px;
|
||||
width: 50px;
|
||||
height: 50px; }
|
||||
height: 50px;
|
||||
}
|
||||
|
||||
.sub-nav {
|
||||
text-align: center;
|
||||
margin: auto;
|
||||
justify-content: center;
|
||||
display: flex; }
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.bar {
|
||||
position: absolute;
|
||||
|
@ -61,20 +70,25 @@ svg {
|
|||
font-size: 15px;
|
||||
margin: auto;
|
||||
display: flex;
|
||||
padding-left: 1%; }
|
||||
.bar a {
|
||||
font-size: inherit;
|
||||
color: black; }
|
||||
padding-left: 1%;
|
||||
}
|
||||
.bar a {
|
||||
font-size: inherit;
|
||||
color: black;
|
||||
}
|
||||
|
||||
.top {
|
||||
top: 50px; }
|
||||
top: 50px;
|
||||
}
|
||||
|
||||
.bottom {
|
||||
bottom: 50px; }
|
||||
bottom: 50px;
|
||||
}
|
||||
|
||||
section {
|
||||
height: 100vh;
|
||||
width: 100vw; }
|
||||
width: 100vw;
|
||||
}
|
||||
|
||||
.music {
|
||||
display: flex;
|
||||
|
@ -82,29 +96,42 @@ section {
|
|||
margin: auto;
|
||||
justify-content: space-between;
|
||||
padding-top: 5vh;
|
||||
margin: 0 100px; }
|
||||
.music .title {
|
||||
font-size: 3vh;
|
||||
display: flex;
|
||||
text-align: left;
|
||||
margin: auto;
|
||||
justify-content: space-between;
|
||||
padding-top: 2vh; }
|
||||
.music img {
|
||||
height: 30vh; }
|
||||
margin: 0 100px;
|
||||
}
|
||||
.music .title {
|
||||
font-size: 3vh;
|
||||
display: flex;
|
||||
text-align: left;
|
||||
margin: auto;
|
||||
justify-content: space-between;
|
||||
padding-top: 2vh;
|
||||
}
|
||||
.music img {
|
||||
height: 30vh;
|
||||
}
|
||||
|
||||
@media screen and (max-width: 1350px) {
|
||||
.music {
|
||||
display: table;
|
||||
margin: auto; }
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
.title {
|
||||
padding-bottom: 20px; }
|
||||
padding-bottom: 20px;
|
||||
}
|
||||
|
||||
img {
|
||||
height: 20vh; }
|
||||
height: 20vh;
|
||||
}
|
||||
|
||||
.top {
|
||||
top: 60px; }
|
||||
top: 60px;
|
||||
}
|
||||
|
||||
.bottom {
|
||||
position: sticky;
|
||||
bottom: 0; } }
|
||||
bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAiYXNzZXRzL3Nhc3MvaW5kZXguY3NzIiwKCSJzb3VyY2VzIjogWwoJCSJhc3NldHMvc2Fzcy9pbmRleC5zYXNzIgoJXSwKCSJuYW1lcyI6IFtdLAoJIm1hcHBpbmdzIjogIkFBTUEsT0FBTyxDQUFDLHFFQUFJO0FBQ1osQUFBQSxDQUFDLENBQUM7RUFDRSxNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxDQUFDLEdBQUc7O0FBRWpCLGlEQUFpRDtBQUNqRCxBQUFBLG1CQUFtQixDQUFDO0VBQ2hCLE9BQU8sRUFBRSxJQUFJLEdBQUc7O0FBS3BCLEFBQUEsSUFBSSxDQUFDO0VBQ0QsVUFBVSxFQUFFLElBQUk7RUFDaEIsS0FBSyxFQUFFLElBQUk7RUFDWCxXQUFXLEVBQUUsc0JBQXNCO0VBQ25DLGtCQUFrQixFQUFFLElBQUk7RUFBRyxpQkFBaUI7RUFDNUMsZUFBZSxFQUFFLElBQUk7RUFBRyxhQUFhLEVBQUc7O0FBRzVDLEFBQUEsS0FBSyxDQUFDO0VBQ0YsS0FBSyxFQUFFLEtBQUs7RUFDWixVQUFVLEVBQUUsTUFBTTtFQUNsQixNQUFNLEVBQUUsSUFBSTtFQUNaLGVBQWUsRUFBRSxNQUFNO0VBQ3ZCLE9BQU8sRUFBRSxJQUFJLEdBQUc7O0FBRXBCLEFBQUEsQ0FBQyxDQUFDO0VBQ0UsS0FBSyxFQUFFLEtBQUs7RUFDWixTQUFTLEVBQUUsR0FBRztFQUNkLGVBQWUsRUFBRSxJQUFJLEdBRUQ7RUFMeEIsQUFJSSxDQUpILEFBSUksTUFBTSxDQUFDO0lBQ0osS0FBSyxFQUFFLElBQUksR0FBRzs7QUFHdEIsQUFBQSxPQUFPLENBQUMsR0FBRyxBQUFBLE1BQU0sQ0FBQztFQUNkLElBQUksRUF0Q0MsT0FBTyxHQXNDSTs7QUFDcEIsQUFBQSxRQUFRLENBQUMsR0FBRyxBQUFBLE1BQU0sQ0FBQztFQUNmLElBQUksRUF6Q0UsT0FBTyxHQXlDSTs7QUFDckIsQUFBQSxVQUFVLENBQUMsR0FBRyxBQUFBLE1BQU0sQ0FBQztFQUNqQixJQUFJLEVBNUNJLE9BQU8sR0E0Q0k7O0FBQ3ZCLEFBQUEsR0FBRyxDQUFDO0VBQ0EsSUFBSSxFQUFFLEtBQUs7RUFDWCxPQUFPLEVBQUUsTUFBTTtFQUNmLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUksR0FBRzs7QUFHbkIsQUFBQSxRQUFRLENBQUM7RUFDTCxVQUFVLEVBQUUsTUFBTTtFQUNsQixNQUFNLEVBQUUsSUFBSTtFQUNaLGVBQWUsRUFBRSxNQUFNO0VBQ3ZCLE9BQU8sRUFBRSxJQUFJLEdBQUc7O0FBSXBCLEFBQUEsSUFBSSxDQUFDO0VBQ0QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLEdBQUc7RUFDVixNQUFNLEVBQUUsSUFBSTtFQUNaLGdCQUFnQixFQUFFLEtBQUs7RUFDdkIsY0FBYyxFQUFFLFVBQVU7RUFDMUIsS0FBSyxFQUFFLEtBQUs7RUFDWixTQUFTLEVBQUUsSUFBSTtFQUNmLE1BQU0sRUFBRSxJQUFJO0VBQ1osT0FBTyxFQUFFLElBQUk7RUFDYixZQUFZLEVBQUUsRUFBRSxHQUdLO0VBYnpCLEFBV0ksSUFYQSxDQVdBLENBQUMsQ0FBQztJQUNFLFNBQVMsRUFBRSxPQUFPO0lBQ2xCLEtBQUssRUFBRSxLQUFLLEdBQUc7O0FBRXZCLEFBQUEsSUFBSSxDQUFDO0VBQ0QsR0FBRyxFQUFFLElBQUksR0FBRzs7QUFFaEIsQUFBQSxPQUFPLENBQUM7RUFDSixNQUFNLEVBQUUsSUFBSSxHQUFHOztBQUVuQixBQUFBLE9BQU8sQ0FBQztFQUNKLE1BQU0sRUFBRSxLQUFLO0VBQ2IsS0FBSyxFQUFFLEtBQUssR0FBRzs7QUFFbkIsQUFBQSxNQUFNLENBQUM7RUFDSCxPQUFPLEVBQUUsSUFBSTtFQUNiLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLE1BQU0sRUFBRSxJQUFJO0VBQ1osZUFBZSxFQUFFLGFBQWE7RUFDOUIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsTUFBTSxFQUFFLE9BQU8sR0FTTTtFQWZ6QixBQU9JLE1BUEUsQ0FPRixNQUFNLENBQUM7SUFDSCxTQUFTLEVBQUUsR0FBRztJQUNkLE9BQU8sRUFBRSxJQUFJO0lBQ2IsVUFBVSxFQUFFLElBQUk7SUFDaEIsTUFBTSxFQUFFLElBQUk7SUFDWixlQUFlLEVBQUUsYUFBYTtJQUM5QixXQUFXLEVBQUUsR0FBRyxHQUFHO0VBYjNCLEFBY0ksTUFkRSxDQWNGLEdBQUcsQ0FBQztJQUNBLE1BQU0sRUFBRSxJQUFJLEdBQUc7O0FBR3ZCLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07RUFDaEMsQUFBQSxNQUFNLENBQUM7SUFDSCxPQUFPLEVBQUUsS0FBSztJQUNkLE1BQU0sRUFBRSxJQUFJLEdBQUc7RUFDbkIsQUFBQSxNQUFNLENBQUM7SUFDSCxjQUFjLEVBQUUsSUFBSSxHQUFHO0VBQzNCLEFBQUEsR0FBRyxDQUFDO0lBQ0EsTUFBTSxFQUFFLElBQUksR0FBRztFQUNuQixBQUFBLElBQUksQ0FBQztJQUNELEdBQUcsRUFBRSxJQUFJLEdBQUc7RUFDaEIsQUFBQSxPQUFPLENBQUM7SUFDSixRQUFRLEVBQUUsTUFBTTtJQUNoQixNQUFNLEVBQUUsQ0FBQyxHQUFHIgp9 */
|
||||
/*# sourceMappingURL=index.css.map */
|
||||
|
|
1
assets/css/index.css.map
Normal file
|
@ -0,0 +1 @@
|
|||
{"version":3,"sourceRoot":"","sources":["../sass/index.sass"],"names":[],"mappings":"AAMQ;AACR;EACI;EACA;;;AAEJ;AACA;EACI;;;AAIJ;EACI;EACA;EACA;EACA;EACA;;;AAEJ;EACI;EACA;EACA;EACA;EACA;;;AAEJ;EACI;EACA;EACA;;AACA;EACI;;;AAER;EACI,MAnCK;;;AAoCT;EACI,MAtCM;;;AAuCV;EACI,MAzCQ;;;AA0CZ;EACI;EACA;EACA;EACA;;;AAEJ;EACI;EACA;EACA;EACA;;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;;;AAER;EACI;;;AAEJ;EACI;;;AAEJ;EACI;EACA;;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;EACA;EACA;;AACJ;EACI;;;AAER;EACI;IACI;IACA;;;EACJ;IACI;;;EACJ;IACI;;;EACJ;IACI;;;EACJ;IACI;IACA","file":"index.css"}
|
BIN
assets/images/aleexheldt.jpg
Normal file
After Width: | Height: | Size: 623 KiB |
BIN
assets/images/covers/blowfishrmx.jpg
Normal file
After Width: | Height: | Size: 211 KiB |
BIN
assets/images/covers/cantfeelmyself.jpg
Normal file
After Width: | Height: | Size: 27 MiB |
BIN
assets/images/covers/cfm_video.png
Normal file
After Width: | Height: | Size: 2.5 MiB |
BIN
assets/images/covers/disillusioned_alt.jpg
Normal file
After Width: | Height: | Size: 4.1 MiB |
BIN
assets/images/covers/kumarionrmx.jpg
Normal file
After Width: | Height: | Size: 3.4 MiB |
BIN
assets/images/covers/laughtracks.jpg
Normal file
After Width: | Height: | Size: 26 MiB |
BIN
assets/images/covers/rumors.jpg
Normal file
After Width: | Height: | Size: 254 KiB |
Before Width: | Height: | Size: 733 KiB After Width: | Height: | Size: 733 KiB |
BIN
assets/images/covers/suburban.jpg
Normal file
After Width: | Height: | Size: 155 KiB |
BIN
assets/images/etc/SUBURBANSDSTICKER.png
Normal file
After Width: | Height: | Size: 168 KiB |
|
@ -4,31 +4,29 @@ $instagram: #E4405F
|
|||
$twitter: #1DA1F2
|
||||
$twitch: #9146FF
|
||||
|
||||
@import url('https://fonts.googleapis.com/css2?family=Orbitron&display=swap');
|
||||
@import url('https://fonts.googleapis.com/css2?family=Orbitron&display=swap')
|
||||
*
|
||||
margin: 0
|
||||
padding: 0
|
||||
|
||||
/* Hide scrollbar for Chrome, Safari and Opera */
|
||||
::-webkit-scrollbar
|
||||
display: none;
|
||||
|
||||
display: none
|
||||
|
||||
// MAKE SVGS FILL WITH THEIR COLOR ON HOVER
|
||||
|
||||
body
|
||||
background: #000
|
||||
color: #fff
|
||||
font-family: 'Orbitron', sans-serif;
|
||||
-ms-overflow-style: none; /* IE and Edge */
|
||||
scrollbar-width: none; /* Firefox */
|
||||
|
||||
|
||||
font-family: 'Orbitron', sans-serif
|
||||
-ms-overflow-style: none /* IE and Edge */
|
||||
scrollbar-width: none /* Firefox */
|
||||
|
||||
.logo
|
||||
width: 150px
|
||||
text-align: center;
|
||||
margin: auto;
|
||||
justify-content: center;
|
||||
text-align: center
|
||||
margin: auto
|
||||
justify-content: center
|
||||
display: flex
|
||||
|
||||
a
|
||||
|
@ -38,7 +36,6 @@ a
|
|||
&:hover
|
||||
color: grey
|
||||
|
||||
|
||||
.twitch svg:hover
|
||||
fill: $twitch
|
||||
.twitter svg:hover
|
||||
|
@ -51,24 +48,21 @@ svg
|
|||
width: 50px
|
||||
height: 50px
|
||||
|
||||
|
||||
.sub-nav
|
||||
text-align: center;
|
||||
margin: auto;
|
||||
justify-content: center;
|
||||
text-align: center
|
||||
margin: auto
|
||||
justify-content: center
|
||||
display: flex
|
||||
|
||||
|
||||
|
||||
.bar
|
||||
position: absolute
|
||||
width: 99%
|
||||
height: 20px
|
||||
background-color: white
|
||||
mix-blend-mode: difference;
|
||||
mix-blend-mode: difference
|
||||
color: black
|
||||
font-size: 15px
|
||||
margin: auto;
|
||||
margin: auto
|
||||
display: flex
|
||||
padding-left: 1%
|
||||
a
|
||||
|
@ -87,22 +81,21 @@ section
|
|||
|
||||
.music
|
||||
display: flex
|
||||
text-align: center;
|
||||
margin: auto;
|
||||
text-align: center
|
||||
margin: auto
|
||||
justify-content: space-between
|
||||
padding-top: 5vh
|
||||
margin: 0 100px
|
||||
.title
|
||||
font-size: 3vh
|
||||
display: flex
|
||||
text-align: left;
|
||||
margin: auto;
|
||||
text-align: left
|
||||
margin: auto
|
||||
justify-content: space-between
|
||||
padding-top: 2vh
|
||||
img
|
||||
height: 30vh
|
||||
|
||||
|
||||
@media screen and ( max-width: 1350px )
|
||||
.music
|
||||
display: table
|
||||
|
@ -116,5 +109,3 @@ section
|
|||
.bottom
|
||||
position: sticky
|
||||
bottom: 0
|
||||
|
||||
|
||||
|
|
63
c.js
|
@ -1,63 +0,0 @@
|
|||
const icons = require("simple-icons");
|
||||
var argv = require("minimist")(process.argv.slice(2));
|
||||
|
||||
// Since I can't refer back to things, I'm just gonna make them consts
|
||||
// and export them
|
||||
|
||||
const dev = false || argv.dev;
|
||||
|
||||
const port = 9696;
|
||||
const name = "ALEX HELDT";
|
||||
const socials = [
|
||||
{
|
||||
name: "twitch",
|
||||
link: "https://twitter.com/abisoos",
|
||||
icon: icons["Twitch"],
|
||||
},
|
||||
{
|
||||
name: "twitter",
|
||||
link: "https://twitter.com/abisoos",
|
||||
icon: icons["Twitter"],
|
||||
},
|
||||
{
|
||||
name: "instagram",
|
||||
link: "https://twitter.com/abisoos",
|
||||
icon: icons["Instagram"],
|
||||
},
|
||||
];
|
||||
const music = [
|
||||
{
|
||||
id: "rumorsremix",
|
||||
shown: "Rumors Remix",
|
||||
image: "/assets/images/serrated.jpg",
|
||||
link: "https://soundcloud.com/abisoos/overdrive",
|
||||
},
|
||||
{
|
||||
id: "serrated",
|
||||
shown: "Serrated",
|
||||
image: "/assets/images/serrated.jpg",
|
||||
link: "https://soundcloud.com/abisoos/overdrive",
|
||||
},
|
||||
{
|
||||
id: "overdrive3",
|
||||
shown: "Serrated",
|
||||
image: "/assets/images/serrated.jpg",
|
||||
link: "https://soundcloud.com/abisoos/overdrive",
|
||||
},
|
||||
{
|
||||
id: "overdrive4",
|
||||
shown: "Serrated",
|
||||
image: "/assets/images/serrated.jpg",
|
||||
link: "https://soundcloud.com/abisoos/overdrive",
|
||||
},
|
||||
];
|
||||
|
||||
const allMusic = [...music];
|
||||
module.exports = {
|
||||
dev,
|
||||
port,
|
||||
name,
|
||||
socials,
|
||||
music,
|
||||
allMusic,
|
||||
};
|
33
configs.js
Normal file
|
@ -0,0 +1,33 @@
|
|||
const icons = require("simple-icons");
|
||||
var argv = require("minimist")(process.argv.slice(2));
|
||||
|
||||
// Since I can't refer back to things, I'm just gonna make them consts
|
||||
// and export them
|
||||
|
||||
const dev = false || argv.dev;
|
||||
|
||||
const port = 9696;
|
||||
const name = "ALEX HELDT";
|
||||
const yml = require("./yaml")
|
||||
function capitalize(str) {
|
||||
return str.charAt(0).toUpperCase() + str.slice(1);
|
||||
}
|
||||
|
||||
let socials = []
|
||||
|
||||
yml.social.forEach(element => {
|
||||
element.icon = icons[capitalize(element.name)];
|
||||
socials.push(element)
|
||||
});
|
||||
|
||||
let music = yml.music.filter(m => m.shown === true)
|
||||
let allMusic = yml.music
|
||||
|
||||
module.exports = {
|
||||
dev,
|
||||
port,
|
||||
name,
|
||||
socials,
|
||||
music,
|
||||
allMusic,
|
||||
};
|
43
files/music.yml
Normal file
|
@ -0,0 +1,43 @@
|
|||
- id: disillusioned
|
||||
name: DISILLUSIONED
|
||||
image: /assets/images/covers/disillusioned_alt.jpg
|
||||
link: https://ffm.to/disillusioned
|
||||
shown: true
|
||||
|
||||
- id: laughtracks
|
||||
name: LAUGH TRACKS
|
||||
image: /assets/images/covers/laughtracks.jpg
|
||||
link: https://ffm.to/laughtracks
|
||||
shown: true
|
||||
|
||||
- id: cantfeelmyself
|
||||
name: CAN'T FEEL MYSELF
|
||||
image: /assets/images/covers/cantfeelmyself.jpg
|
||||
link: https://ffm.to/cantfeelmyself
|
||||
shown: true
|
||||
|
||||
- id: cfmmv
|
||||
name: CAN'T FEEL MYSELF MV
|
||||
image: /assets/images/covers/cfm_video.png
|
||||
link: https://www.youtube.com/watch?v=vdQdjxUFV3E
|
||||
shown: true
|
||||
|
||||
- id: kumarionrmx
|
||||
name: Want It Remix
|
||||
image: "/assets/images/covers/kumarionrmx.jpg"
|
||||
link: https://soundcloud.com/alexheldtmusic/kumarion-want-it-alex-heldt-remix-1
|
||||
|
||||
- id: rumorsrmx
|
||||
name: Rumors Remix
|
||||
image: "/assets/images/covers/rumors.jpg"
|
||||
link: https://ffm.to/dd3kjja
|
||||
|
||||
- id: blowfishrmx
|
||||
name: Blowfish Boyfriend Remix
|
||||
image: "/assets/images/covers/blowfishrmx.jpg"
|
||||
link: https://ffm.to/blowfishbfremix.owe
|
||||
|
||||
- id: serrated
|
||||
name: Serrated EP
|
||||
image: "/assets/images/covers/serrated.jpg"
|
||||
link: https://ffm.to/serrated
|
8
files/social.yml
Normal file
|
@ -0,0 +1,8 @@
|
|||
- name: twitch
|
||||
link: https://twitch.tv/alexheldtmusic
|
||||
|
||||
- name: twitter
|
||||
link: https://twitch.tv/alexheldtmusic
|
||||
|
||||
- name: Instagram
|
||||
link: https://instagr.am/alexheldtmusic
|
36
index.js
|
@ -6,37 +6,9 @@ const cors = require("cors");
|
|||
const morgan = require("morgan");
|
||||
const chalk = require("chalk");
|
||||
const hbs = require("express-handlebars");
|
||||
const { dev, music, port, socials, name } = require("./c");
|
||||
const redis = require("ioredis");
|
||||
const { promisify } = require("util");
|
||||
|
||||
const {
|
||||
compileSassAndSaveMultiple,
|
||||
setupCleanupOnExit,
|
||||
} = require("compile-sass");
|
||||
const path = require("path");
|
||||
// Init
|
||||
const { dev, allMusic, music, port, socials, name } = require("./configs");
|
||||
const app = express();
|
||||
const r = new redis(6379, "192.168.1.11", {
|
||||
connectionName: `ALEXHELDT${dev ? "-dev" : ""}`,
|
||||
});
|
||||
const get = promisify(r.get).bind(r);
|
||||
compileSassAndSaveMultiple({
|
||||
sassPath: path.join(__dirname, "assets/sass/"),
|
||||
cssPath: path.join(__dirname, "assets/css/"),
|
||||
files: ["index.sass"],
|
||||
});
|
||||
|
||||
process.on("SIGINT", () => {
|
||||
try {
|
||||
setupCleanupOnExit("assets/css");
|
||||
console.log("worked");
|
||||
process.exit(0);
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
process.exit(1);
|
||||
}
|
||||
});
|
||||
|
||||
app.engine("hbs", hbs({ extname: "hbs", defaultView: "default" }));
|
||||
app.set("view engine", "hbs");
|
||||
|
@ -72,8 +44,8 @@ app.get("/", async (req, res) => {
|
|||
socials,
|
||||
music,
|
||||
creator: {
|
||||
name: await r.get("creator_name") || 'lio',
|
||||
website: await r.get("creator_website") || "https://himbo.cat",
|
||||
name: "temere",
|
||||
website: "https://teme.re",
|
||||
},
|
||||
});
|
||||
});
|
||||
|
@ -84,7 +56,7 @@ socials.forEach((social) => {
|
|||
});
|
||||
|
||||
// ! MUSIC LINKS
|
||||
music.forEach((item) => {
|
||||
allMusic.forEach((item) => {
|
||||
app.get(`/${item.id}`, (req, res) => res.redirect(item.link));
|
||||
});
|
||||
|
||||
|
|
2898
package-lock.json
generated
|
@ -5,21 +5,20 @@
|
|||
"main": "index.js",
|
||||
"dependencies": {
|
||||
"chalk": "^3.0.0",
|
||||
"compile-sass": "^1.1.1",
|
||||
"compression": "^1.7.4",
|
||||
"cors": "^2.8.5",
|
||||
"express": "^4.17.1",
|
||||
"express-handlebars": "^3.1.0",
|
||||
"helmet": "^3.21.2",
|
||||
"ioredis": "^4.17.3",
|
||||
"js-yaml": "^4.1.0",
|
||||
"minimist": "^1.2.5",
|
||||
"morgan": "^1.9.1",
|
||||
"node-cache": "^5.1.2",
|
||||
"sass": "^1.41.0",
|
||||
"simple-icons": "^3.10.0"
|
||||
},
|
||||
"devDependencies": {},
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
"css": "sass assets/sass/index.sass assets/css/index.css"
|
||||
},
|
||||
"keywords": [],
|
||||
"author": "",
|
||||
|
|
|
@ -18,9 +18,9 @@
|
|||
<div class="music">
|
||||
{{#each music}}
|
||||
<div class="song">
|
||||
<a href="{{../protocol}}://{{../host}}/{{id}}"><img src="{{image}}" alt="{{shown}} Cover Art"></a>
|
||||
<a href="{{../protocol}}://{{../host}}/{{id}}"><img src="{{image}}" alt="{{name}} Cover Art"></a>
|
||||
<a href="{{../protocol}}://{{../host}}/{{id}}" class="title">
|
||||
{{shown}}
|
||||
{{name}}
|
||||
</a>
|
||||
</div>
|
||||
{{/each}}
|
||||
|
@ -29,4 +29,4 @@
|
|||
|
||||
|
||||
<div class="bar top"></div>
|
||||
<div class="bar bottom">made by <a href="{{creator.website}}">{{creator.name}}</a></div>
|
||||
<div class="bar bottom"><a href="{{creator.website}}">made by {{creator.name}}</a></div>
|
11
yaml.js
Normal file
|
@ -0,0 +1,11 @@
|
|||
const yaml = require('js-yaml');
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
|
||||
let YAML = []
|
||||
|
||||
fs.readdirSync('./files').forEach(file => {
|
||||
YAML[file.replace('.yml', '')] = yaml.load(fs.readFileSync(path.join(__dirname, 'files', file), 'utf8'))
|
||||
});
|
||||
|
||||
module.exports = YAML;
|