Winter snow!
This commit is contained in:
parent
59c4e0c7a6
commit
0033b9692f
3 changed files with 207 additions and 1 deletions
50
index.js
50
index.js
|
@ -181,6 +181,56 @@ function pageUpdate() {
|
||||||
|
|
||||||
html = html.replace("{MASTODON_FEED}", mastoData.HTML)
|
html = html.replace("{MASTODON_FEED}", mastoData.HTML)
|
||||||
|
|
||||||
|
var now = new Date()
|
||||||
|
currentMonth = now.getMonth() + 1
|
||||||
|
|
||||||
|
if ([11, 12, 1].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>
|
||||||
|
`)
|
||||||
|
} else {
|
||||||
|
html = html.replace("{SEASONAL_EFFECT}", "")
|
||||||
|
}
|
||||||
|
|
||||||
fs.writeFileSync(path.join(__dirname, 'static/index.html'), html)
|
fs.writeFileSync(path.join(__dirname, 'static/index.html'), html)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -21,6 +21,7 @@
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<h1>Welcome to Violet's Purgatory</h1>
|
<h1>Welcome to Violet's Purgatory</h1>
|
||||||
|
|
||||||
<div class="fadediv">
|
<div class="fadediv">
|
||||||
<div class="container-fluid row" id="card">
|
<div class="container-fluid row" id="card">
|
||||||
<h2>Violet</h2>
|
<h2>Violet</h2>
|
||||||
|
@ -51,5 +52,7 @@
|
||||||
|
|
||||||
{MASTODON_FEED}
|
{MASTODON_FEED}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
{SEASONAL_EFFECT}
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
155
static/style.css
155
static/style.css
|
@ -50,6 +50,7 @@ a {
|
||||||
}
|
}
|
||||||
|
|
||||||
.chip {
|
.chip {
|
||||||
|
z-index: 3;
|
||||||
font-size: 1.3rem;
|
font-size: 1.3rem;
|
||||||
border: 2px gray solid;
|
border: 2px gray solid;
|
||||||
border-radius: 6px;
|
border-radius: 6px;
|
||||||
|
@ -76,6 +77,8 @@ a {
|
||||||
margin: auto;
|
margin: auto;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
position: relative;
|
||||||
|
z-index: 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
.activity>p {
|
.activity>p {
|
||||||
|
@ -134,7 +137,8 @@ hr {
|
||||||
margin: 20px auto;
|
margin: 20px auto;
|
||||||
width: 95%;
|
width: 95%;
|
||||||
max-width: 800px;
|
max-width: 800px;
|
||||||
|
z-index: 3;
|
||||||
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
.me {
|
.me {
|
||||||
|
@ -227,4 +231,153 @@ hr {
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
transform: none;
|
transform: none;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.snowflake {
|
||||||
|
color: white;
|
||||||
|
font-size: 0.5rem;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
text-shadow: 0 0 5px #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.snowflake,
|
||||||
|
.snowflake .inner {
|
||||||
|
z-index: 1;
|
||||||
|
animation-iteration-count: infinite;
|
||||||
|
animation-play-state: running
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes snowflakes-fall {
|
||||||
|
0% {
|
||||||
|
transform: translateY(0)
|
||||||
|
}
|
||||||
|
|
||||||
|
100% {
|
||||||
|
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-duration: 3s;
|
||||||
|
animation-timing-function: ease-in-out
|
||||||
|
}
|
||||||
|
|
||||||
|
.snowflake .inner {
|
||||||
|
animation-duration: 10s;
|
||||||
|
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
|
||||||
}
|
}
|
Loading…
Reference in a new issue