diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..97886ec --- /dev/null +++ b/Dockerfile @@ -0,0 +1,20 @@ +# Tell Docker to use the "node" Docker Image at version "10.15.3" +FROM node:10.15.3 +# Create our containers WORKDIR and "node_modules" directory. +# Give the user:group "node" ownership of all files/directories in our containers WORKDIR +RUN mkdir -p /home/node/app/node_modules && chown -R node:node /home/node/app +# Tell our container which directory to use as the WORKDIR +WORKDIR /home/node/app +# Copy over our local version of "package.json" and "package-lock.json" into our container +COPY package*.json ./ +# Creates a user for our container +USER node +# Installs our NPM packages from the "package.json" file we moved from local in to our container +RUN npm install +# Tells our container who owns the copied content +COPY --chown=node:node . . +# Exposes the port "3000" from our container +# This is also how we can connect to our container from our host machine (the one you're reading this from now) +EXPOSE 3000 +# An array of commands our container needs to run when we start it +CMD ["node", "run.js"] diff --git a/assets/css/main.css b/assets/css/main.css index bec0112..4b801ea 100644 --- a/assets/css/main.css +++ b/assets/css/main.css @@ -1,16 +1,15 @@ @font-face { - font-family: 'Gotham'; + font-family: "Gotham"; src: url("../fonts/Gotham-Font/Gotham-Bold.otf"); } - * { margin: 0; padding: 0; } body { - font-family: 'Gotham', sans-serif; - background-image: url("../images/background.png"); + font-family: "Gotham", sans-serif; + background-image: url("../images/dualmemory_bg.png"); background-size: cover; background-attachment: fixed; background-position: center; @@ -33,14 +32,12 @@ iframe { width: 100%; text-transform: uppercase; } - .socials a { text-decoration: none; color: #ffffff; } - .socials a:hover { - color: #a865ff81; + color: rgba(255, 85, 0, 0.7647058824); } .links { @@ -48,12 +45,8 @@ iframe { } a { - display: -webkit-box; - display: -ms-flexbox; display: flex; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; + justify-content: space-between; } .logo { @@ -87,7 +80,7 @@ a { } .creator a:hover { - color: #8445fa50; + color: rgba(255, 85, 0, 0.5098039216); } .them { @@ -97,48 +90,23 @@ a { } .floating { - -webkit-animation-name: floating; - animation-name: floating; - -webkit-animation-duration: 3s; - animation-duration: 3s; - -webkit-animation-iteration-count: infinite; - animation-iteration-count: infinite; - -webkit-animation-timing-function: ease-in-out; - animation-timing-function: ease-in-out; -} - -@-webkit-keyframes floating { - from { - -webkit-transform: translate(0, 0px); - transform: translate(0, 0px); - } - 65% { - -webkit-transform: translate(0, 10px); - transform: translate(0, 10px); - } - to { - -webkit-transform: translate(0, 0px); - transform: translate(0, 0px); - } + animation-name: floating; + animation-duration: 3s; + animation-iteration-count: infinite; + animation-timing-function: ease-in-out; } @keyframes floating { from { - -webkit-transform: translate(0, 0px); - transform: translate(0, 0px); + transform: translate(0, 0px); } 65% { - -webkit-transform: translate(0, 10px); - transform: translate(0, 10px); + transform: translate(0, 10px); } to { - -webkit-transform: translate(0, 0px); - transform: translate(0, 0px); + transform: translate(0, 0px); } } - .shadow { - -webkit-filter: drop-shadow(0 0 0.3rem #333333); - filter: drop-shadow(0 0 0.3rem #333333); -} -/*# sourceMappingURL=main.css.map */ \ No newline at end of file + filter: drop-shadow(0 0 0.3rem #333333); +}/*# sourceMappingURL=main.css.map */ \ No newline at end of file diff --git a/assets/css/main.css.map b/assets/css/main.css.map index 05d4444..96f9f12 100644 --- a/assets/css/main.css.map +++ b/assets/css/main.css.map @@ -1,9 +1 @@ -{ - "version": 3, - "mappings": "AAAA,UAAU;EACN,WAAW,EAAE,QAAQ;EACrB,GAAG,EAAE,2CAA2C;;;AAEpD,AAAA,CAAC,CAAC;EACE,MAAM,EAAE,CAAC;EACT,OAAO,EAAE,CAAC;CAAG;;AAEjB,AAAA,IAAI,CAAC;EACD,WAAW,EAAE,oBAAoB;EACjC,gBAAgB,EAAE,+BAA+B;EACjD,eAAe,EAAE,KAAK;EACtB,qBAAqB,EAAE,KAAK;EAC5B,mBAAmB,EAAE,MAAM;EAC3B,iBAAiB,EAAE,SAAS;EAC5B,cAAc,EAAE,SAAS;CAAG;;AAEhC,AAAA,MAAM,CAAC;EACH,MAAM,EAAE,mBAAmB;CAAG;;AAElC,AAAA,QAAQ,CAAC;EACL,SAAS,EAAE,GAAG;EACd,IAAI,EAAE,CAAC;EACP,WAAW,EAAE,GAAG;EAChB,cAAc,EAAE,IAAI;EACpB,QAAQ,EAAE,QAAQ;EAClB,UAAU,EAAE,MAAM;EAClB,GAAG,EAAE,GAAG;EACR,KAAK,EAAE,IAAI;EACX,cAAc,EAAE,SAAS;CAOA;;AAhB7B,AAWI,QAXI,CAWJ,CAAC,CAAC;EACE,eAAe,EAAE,IAAI;EACrB,KAAK,EAAE,OAAO;CAAG;;AAbzB,AAeI,QAfI,CAeJ,CAAC,AAAA,MAAM,CAAC;EACJ,KAAK,EAAE,SAAS;CAAG;;AAE3B,AAAA,MAAM,CAAC;EACH,OAAO,EAAE,YAAY;CAAG;;AAE5B,AAAA,CAAC,CAAC;EACE,OAAO,EAAE,IAAI;EACb,eAAe,EAAE,aAAa;CAAG;;AAErC,AAAA,KAAK,CAAC;EACF,KAAK,EAAE,IAAI;EACX,MAAM,EAAE,IAAI;CAAG;;AAEnB,AAAA,QAAQ,CAAC;EACL,QAAQ,EAAE,QAAQ;EAClB,IAAI,EAAE,GAAG;EACT,KAAK,EAAE,GAAG;EACV,MAAM,EAAE,IAAI;EACZ,WAAW,EAAE,KAAK;CAAG;;AAEzB,AAAA,QAAQ,CAAC;EACL,SAAS,EAAE,KAAK;EAChB,KAAK,EAAE,KAAK;EACZ,UAAU,EAAE,MAAM;EAClB,OAAO,EAAE,aAAa;EACtB,OAAO,EAAE,GAAG;EACZ,QAAQ,EAAE,QAAQ;EAClB,GAAG,EAAE,GAAG;CAAG;;AAEf,AAAA,QAAQ,CAAC,CAAC,CAAC;EACP,eAAe,EAAE,IAAI;EACrB,MAAM,EAAE,CAAC;EACT,OAAO,EAAE,CAAC;EACV,KAAK,EAAE,IAAI;CAAG;;AAElB,AAAA,QAAQ,CAAC,CAAC,AAAA,MAAM,CAAC;EACb,KAAK,EAAE,SAAS;CAAG;;AAEvB,AAAA,KAAK,CAAC;EACF,KAAK,EAAE,IAAI;EACX,MAAM,EAAE,IAAI;EACZ,WAAW,EAAE,KAAK;CAAG;;AAEzB,AAAA,SAAS,CAAC;EACN,cAAc,EAAE,QAAQ;EACxB,kBAAkB,EAAE,EAAE;EACtB,yBAAyB,EAAE,QAAQ;EACnC,yBAAyB,EAAE,WAAW;CAAG;;AAE7C,UAAU,CAAV,QAAU;EACN,IAAI;IACA,SAAS,EAAE,iBAAkB;;EACjC,GAAG;IACC,SAAS,EAAE,kBAAkB;;EACjC,EAAE;IACE,SAAS,EAAE,iBAAkB;;;;AAGrC,AAAA,OAAO,CAAC;EACJ,MAAM,EAAE,+BAA8B;CAAG", - "sources": [ - "main.sass" - ], - "names": [], - "file": "main.css" -} \ No newline at end of file +{"version":3,"sources":["main.sass","main.css"],"names":[],"mappings":"AAAA;EACI,qBAAA;EACA,gDAAA;ACCJ;ADCA;EACI,SAAA;EACA,UAAA;ACCJ;;ADCA;EACI,iCAAA;EACA,oDAAA;EACA,sBAAA;EACA,4BAAA;EACA,2BAAA;EACA,4BAAA;EACA,yBAAA;ACEJ;;ADAA;EACI,2BAAA;ACGJ;;ADDA;EACI,cAAA;EACA,OAAA;EACA,gBAAA;EACA,oBAAA;EACA,kBAAA;EACA,kBAAA;EACA,QAAA;EACA,WAAA;EACA,yBAAA;ACIJ;ADFI;EACI,qBAAA;EACA,cAAA;ACIR;ADFI;EACI,qCAAA;ACIR;;ADFA;EACI,qBAAA;ACKJ;;ADHA;EACI,aAAA;EACA,8BAAA;ACMJ;;ADJA;EACI,WAAA;EACA,YAAA;ACOJ;;ADLA;EACI,kBAAA;EACA,SAAA;EACA,UAAA;EACA,YAAA;EACA,kBAAA;ACQJ;;ADNA;EACI,gBAAA;EACA,YAAA;EACA,kBAAA;EACA,sBAAA;EACA,YAAA;EACA,kBAAA;EACA,QAAA;ACSJ;;ADPA;EACI,qBAAA;EACA,SAAA;EACA,UAAA;EACA,WAAA;ACUJ;;ADRA;EACI,qCAAA;ACWJ;;ADTA;EACI,WAAA;EACA,YAAA;EACA,kBAAA;ACYJ;;ADVA;EACI,wBAAA;EACA,sBAAA;EACA,mCAAA;EACA,sCAAA;ACaJ;;ADXA;EACI;IACI,4BAAA;ECcN;EDbE;IACI,6BAAA;ECeN;EDdE;IACI,4BAAA;ECgBN;AACF;ADfA;EACI,uCAAA;ACiBJ","file":"main.css"} \ No newline at end of file diff --git a/assets/css/main.sass b/assets/css/main.sass index a5f4426..7f61e2e 100644 --- a/assets/css/main.sass +++ b/assets/css/main.sass @@ -8,7 +8,7 @@ body font-family: 'Gotham', sans-serif - background-image: url('../images/background.png') + background-image: url('../images/dualmemory_bg.png') background-size: cover background-attachment: fixed background-position: center @@ -34,7 +34,7 @@ iframe color: #ffffff a:hover - color: #a865ff81 + color: #ff5500c3 .links display: inline-block @@ -70,7 +70,7 @@ a color: #fff .creator a:hover - color: #8445fa50 + color: #ff550082 .them width: auto @@ -85,12 +85,11 @@ a @keyframes floating from - transform: translate(0, 0px) + transform: translate(0, 0px) 65% transform: translate(0, 10px) to transform: translate(0, -0px) - .shadow - filter: drop-shadow(0 0 .3rem #333333); \ No newline at end of file + filter: drop-shadow(0 0 .3rem #333333) diff --git a/assets/images/dualmemory_bg.png b/assets/images/dualmemory_bg.png new file mode 100644 index 0000000..ccdcef0 Binary files /dev/null and b/assets/images/dualmemory_bg.png differ diff --git a/constants.js b/constants.js index d7e59c3..1bf85de 100644 --- a/constants.js +++ b/constants.js @@ -7,6 +7,7 @@ module.exports = { twitter: "https://twitter.com/YaiSor", soundcloud: "https://soundcloud.com/yaisor", spotify: "https://open.spotify.com/artist/2gR5b7EpjCvePrAZZ3KQPj", - twitch: "https://twitch.tv/yaisor" + twitch: "https://twitch.tv/yaisor", + bluesky: "https://bsky.app/profile/did:plc:tepfoqdmy767rd7qkrm4kujx" } }; diff --git a/server.js b/server.js index 4844910..2fee105 100644 --- a/server.js +++ b/server.js @@ -7,7 +7,7 @@ const morgan = require("morgan"); const chalk = require("chalk"); const hbs = require("express-handlebars"); let { port, hostname } = { - port: 50269 + port: 3000 }; const con = require("./constants"); @@ -63,6 +63,11 @@ module.exports = async => { link: "sor.dog/twitter", character: breakSocials("Twitter") }, + { + name: "Bluesky", + link: "sor.dog/bluesky", + character: breakSocials("Bluesky") + }, { name: "Spotify", link: "sor.dog/spotify", @@ -73,11 +78,6 @@ module.exports = async => { link: "sor.dog/soundcloud", character: breakSocials("Soundcloud") }, - { - name: "Patreon", - link: "sor.dog/patreon", - character: breakSocials("Patreon") - }, { name: "Bandcamp", link: "sor.dog/bandcamp", @@ -108,8 +108,8 @@ module.exports = async => { app.get("/twitter", (req, res) => { res.redirect(con.socials.twitter); }); - app.get("/patreon", (req, res) => { - res.redirect(con.socials.patreon); + app.get("/bluesky", (req, res) => { + res.redirect(con.socials.bluesky); }); app.get("/bandcamp", (req, res) => { res.redirect(con.socials.bandcamp); @@ -127,6 +127,7 @@ module.exports = async => { res.redirect(con.socials.twitch); }); + app.listen(port /* , hostname */, () => { console.log(`[ Server ] Listening on ${port}`); });