Merge pull request 'General optimizations ig' (#6) from dev into origin

Reviewed-on: https://codeberg.orgBingus_Violet/Violets-Purgatory#6
This commit is contained in:
Bingus_Violet 2024-01-11 18:19:39 +00:00
commit 90943d93ff
5 changed files with 199 additions and 200 deletions

View file

@ -227,48 +227,8 @@ function pageUpdate() {
currentMonth = now.getMonth() + 1
if ([11, 12].includes(currentMonth)) { // The Below HTML is copy and pasted from that one site :>
html = html.replace("{SEASONAL_EFFECT}", `
<div class="snowflakes" aria-hidden="true">
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
</div>
<br>
<p>I love the winter :></p>
`)
html = html.replace("{SEASONAL_EFFECT}", fs.readFileSync(path.join(__dirname, 'static/snow.html')))
console.log("beep")
} else {
html = html.replace("{SEASONAL_EFFECT}", "")
}

View file

@ -44,15 +44,12 @@
{LANYARD_QUOTE}
</div>
</div>
<p style="color: lightgray">To be honest the pronouns button is just there so the layout is more even</p>
<noscript>
<p style="font-size: 0.9rem;">Fun fact: This website uses no Javascript! Everything dynamic (E.G. The discord status) is done
server-side, so enjoy :D</p>
</noscript>
<p>Check out the source code on <a href="https://codeberg.org/Bingus_Violet/Violets-Purgatory">Codeberg</a></p>
<!-- <h2><hr>Projects</h2>
<p>A (few) of the main projects i've been working on. Find more <a href="./projects">here</a>!</p> -->
{LANYARD_FULL}
{SOCIALS}

0
static/favicon.ico Normal file
View file

196
static/snow.html Normal file
View file

@ -0,0 +1,196 @@
<div class="snowflakes" aria-hidden="true">
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
<div class="snowflake">
<div class="inner"></div>
</div>
</div>
<br>
<p>I love the winter :></p>
<style>
.snowflake {
color: white;
font-size: 0.5em;
font-family: Arial, sans-serif;
text-shadow: 0 0 5px #000;
visibility: hidden;
}
.snowflake,
.snowflake .inner {
z-index: 1;
animation-iteration-count: infinite;
animation-play-state: running
}
@keyframes snowflakes-fall {
0% {
visibility: visible;
transform: translateY(0)
}
100% {
visibility: visible;
transform: translateY(110vh)
}
}
@keyframes snowflakes-shake {
0%,
100% {
transform: translateX(0)
}
50% {
transform: translateX(80px)
}
}
.snowflake {
position: fixed;
top: -10%;
-webkit-user-select: none;
user-select: none;
cursor: default;
animation-name: snowflakes-shake;
animation-delay: 0.5s;
animation-duration: 3s;
animation-timing-function: ease-in-out
}
.snowflake .inner {
animation-duration: 10s;
animation-delay: 0.5s;
animation-name: snowflakes-fall;
animation-timing-function: linear
}
.snowflake:nth-of-type(0) {
left: 1%;
animation-delay: 0s
}
.snowflake:nth-of-type(0) .inner {
animation-delay: 0s
}
.snowflake:first-of-type {
left: 10%;
animation-delay: 1s
}
.snowflake:first-of-type .inner,
.snowflake:nth-of-type(8) .inner {
animation-delay: 1s
}
.snowflake:nth-of-type(2) {
left: 20%;
animation-delay: .5s
}
.snowflake:nth-of-type(2) .inner,
.snowflake:nth-of-type(6) .inner {
animation-delay: 6s
}
.snowflake:nth-of-type(3) {
left: 30%;
animation-delay: 2s
}
.snowflake:nth-of-type(11) .inner,
.snowflake:nth-of-type(3) .inner {
animation-delay: 4s
}
.snowflake:nth-of-type(4) {
left: 40%;
animation-delay: 2s
}
.snowflake:nth-of-type(10) .inner,
.snowflake:nth-of-type(4) .inner {
animation-delay: 2s
}
.snowflake:nth-of-type(5) {
left: 50%;
animation-delay: 3s
}
.snowflake:nth-of-type(5) .inner {
animation-delay: 8s
}
.snowflake:nth-of-type(6) {
left: 60%;
animation-delay: 2s
}
.snowflake:nth-of-type(7) {
left: 70%;
animation-delay: 1s
}
.snowflake:nth-of-type(7) .inner {
animation-delay: 2.5s
}
.snowflake:nth-of-type(8) {
left: 80%;
animation-delay: 0s
}
.snowflake:nth-of-type(9) {
left: 90%;
animation-delay: 1.5s
}
.snowflake:nth-of-type(9) .inner {
animation-delay: 3s
}
.snowflake:nth-of-type(10) {
left: 25%;
animation-delay: 0s
}
.snowflake:nth-of-type(11) {
left: 65%;
animation-delay: 2.5s
}
</style>

View file

@ -33,7 +33,7 @@ html {
overflow-x: hidden;
margin: auto;
background-color: rgb(20, 5, 60);
background: linear-gradient(rgb(25, 5, 75), black);
background: linear-gradient(rgb(15, 5, 50), black);
width: 100vw;
height: 100vh;
margin: 0;
@ -282,157 +282,3 @@ hr {
transform: none;
}
}
.snowflake {
color: white;
font-size: 0.5em;
font-family: Arial, sans-serif;
text-shadow: 0 0 5px #000;
visibility: hidden;
}
.snowflake,
.snowflake .inner {
z-index: 1;
animation-iteration-count: infinite;
animation-play-state: running
}
@keyframes snowflakes-fall {
0% {
visibility: visible;
transform: translateY(0)
}
100% {
visibility: visible;
transform: translateY(110vh)
}
}
@keyframes snowflakes-shake {
0%,
100% {
transform: translateX(0)
}
50% {
transform: translateX(80px)
}
}
.snowflake {
position: fixed;
top: -10%;
-webkit-user-select: none;
user-select: none;
cursor: default;
animation-name: snowflakes-shake;
animation-delay: 0.5s;
animation-duration: 3s;
animation-timing-function: ease-in-out
}
.snowflake .inner {
animation-duration: 10s;
animation-delay: 0.5s;
animation-name: snowflakes-fall;
animation-timing-function: linear
}
.snowflake:nth-of-type(0) {
left: 1%;
animation-delay: 0s
}
.snowflake:nth-of-type(0) .inner {
animation-delay: 0s
}
.snowflake:first-of-type {
left: 10%;
animation-delay: 1s
}
.snowflake:first-of-type .inner,
.snowflake:nth-of-type(8) .inner {
animation-delay: 1s
}
.snowflake:nth-of-type(2) {
left: 20%;
animation-delay: .5s
}
.snowflake:nth-of-type(2) .inner,
.snowflake:nth-of-type(6) .inner {
animation-delay: 6s
}
.snowflake:nth-of-type(3) {
left: 30%;
animation-delay: 2s
}
.snowflake:nth-of-type(11) .inner,
.snowflake:nth-of-type(3) .inner {
animation-delay: 4s
}
.snowflake:nth-of-type(4) {
left: 40%;
animation-delay: 2s
}
.snowflake:nth-of-type(10) .inner,
.snowflake:nth-of-type(4) .inner {
animation-delay: 2s
}
.snowflake:nth-of-type(5) {
left: 50%;
animation-delay: 3s
}
.snowflake:nth-of-type(5) .inner {
animation-delay: 8s
}
.snowflake:nth-of-type(6) {
left: 60%;
animation-delay: 2s
}
.snowflake:nth-of-type(7) {
left: 70%;
animation-delay: 1s
}
.snowflake:nth-of-type(7) .inner {
animation-delay: 2.5s
}
.snowflake:nth-of-type(8) {
left: 80%;
animation-delay: 0s
}
.snowflake:nth-of-type(9) {
left: 90%;
animation-delay: 1.5s
}
.snowflake:nth-of-type(9) .inner {
animation-delay: 3s
}
.snowflake:nth-of-type(10) {
left: 25%;
animation-delay: 0s
}
.snowflake:nth-of-type(11) {
left: 65%;
animation-delay: 2.5s
}