From d8f0dfad31ca55dd34c599581d1c115ea640abdb Mon Sep 17 00:00:00 2001 From: Dan Date: Tue, 30 Dec 2025 11:01:49 +0000 Subject: [PATCH] More work on now page --- assets/images/android-chrome-512x512.png | Bin 16744 -> 0 bytes assets/images/books/designing-data.svg | 6 -- assets/images/books/phoenix-project.svg | 6 -- assets/images/books/rust-book.svg | 6 -- assets/images/coffee-cup-9-512.png | Bin 12704 -> 0 bytes assets/images/dvds/akira.svg | 12 --- assets/images/dvds/blade-runner.svg | 15 --- assets/images/dvds/ghost-in-shell.svg | 15 --- assets/images/dvds/matrix.svg | 9 -- assets/sass/pages/now.scss | 112 +++++++++++++++++++++- assets/sass/style.scss | 24 ++--- content/now/currently.md | 8 +- content/now/media.md | 30 ++++++ layouts/now/single.html | 77 ++++++--------- layouts/partials/elements/whiteboard.html | 19 ++++ 15 files changed, 204 insertions(+), 135 deletions(-) delete mode 100644 assets/images/android-chrome-512x512.png delete mode 100644 assets/images/books/designing-data.svg delete mode 100644 assets/images/books/phoenix-project.svg delete mode 100644 assets/images/books/rust-book.svg delete mode 100644 assets/images/coffee-cup-9-512.png delete mode 100644 assets/images/dvds/akira.svg delete mode 100644 assets/images/dvds/blade-runner.svg delete mode 100644 assets/images/dvds/ghost-in-shell.svg delete mode 100644 assets/images/dvds/matrix.svg create mode 100644 content/now/media.md diff --git a/assets/images/android-chrome-512x512.png b/assets/images/android-chrome-512x512.png deleted file mode 100644 index 7e3c939c874a0b45d108de15088a8e4375ef26c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16744 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 diff --git a/assets/images/books/designing-data.svg b/assets/images/books/designing-data.svg deleted file mode 100644 index af6deda..0000000 --- a/assets/images/books/designing-data.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - Designing Data-Intensive Apps - - diff --git a/assets/images/books/phoenix-project.svg b/assets/images/books/phoenix-project.svg deleted file mode 100644 index 66d5f2b..0000000 --- a/assets/images/books/phoenix-project.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - The Phoenix Project - - diff --git a/assets/images/books/rust-book.svg b/assets/images/books/rust-book.svg deleted file mode 100644 index cfbe3ec..0000000 --- a/assets/images/books/rust-book.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - The Rust Programming Language - - diff --git a/assets/images/coffee-cup-9-512.png b/assets/images/coffee-cup-9-512.png deleted file mode 100644 index ed96ec902896b3db1bd780c1465e6afc76e3f783..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12704 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 - - - - - - - - - AKIRA - - diff --git a/assets/images/dvds/blade-runner.svg b/assets/images/dvds/blade-runner.svg deleted file mode 100644 index 97b3206..0000000 --- a/assets/images/dvds/blade-runner.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - BLADE - - - RUNNER - - diff --git a/assets/images/dvds/ghost-in-shell.svg b/assets/images/dvds/ghost-in-shell.svg deleted file mode 100644 index ab3c8b4..0000000 --- a/assets/images/dvds/ghost-in-shell.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - GHOST IN - - - THE SHELL - - diff --git a/assets/images/dvds/matrix.svg b/assets/images/dvds/matrix.svg deleted file mode 100644 index 9ee4dd7..0000000 --- a/assets/images/dvds/matrix.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - THE - - - MATRIX - - diff --git a/assets/sass/pages/now.scss b/assets/sass/pages/now.scss index 303a753..2e3aa63 100644 --- a/assets/sass/pages/now.scss +++ b/assets/sass/pages/now.scss @@ -226,6 +226,10 @@ $dark-bg-3: #0a0a0a; } .storage-drive-led { + position: absolute; + top: 50%; + left: 5px; + transform: translateY(-2px); width: 4px; height: 4px; } @@ -414,7 +418,6 @@ $dark-bg-3: #0a0a0a; .patch-front { display: flex; align-items: center; - padding: 0 10px; height: 100%; gap: 10px; } @@ -1057,7 +1060,6 @@ $dark-bg-3: #0a0a0a; font-size: 28px; font-weight: bold; color: $dark-bg-1; - margin-bottom: 15px; padding-bottom: 8px; position: relative; display: inline-block; @@ -1319,6 +1321,112 @@ $dark-bg-3: #0a0a0a; background: linear-gradient(135deg, #ce93d8 0%, #ba68c8 100%); } +// Whiteboard Media Items (Books, DVDs) +.wb-media { + display: flex; + flex-wrap: wrap; + gap: 20px; + margin-top: 40px; + justify-content: center; +} + +.wb-media-item { + position: relative; + width: 120px; + flex-shrink: 0; + transition: transform 0.2s ease; + + // Random rotation for each item + &:nth-child(1) { + transform: rotate(-2deg); + } + + &:nth-child(2) { + transform: rotate(3deg); + } + + &:nth-child(3) { + transform: rotate(-1deg); + } + + &:nth-child(4) { + transform: rotate(2deg); + } + + &:nth-child(5) { + transform: rotate(-3deg); + } + + &:nth-child(6) { + transform: rotate(1deg); + } + + &:hover { + transform: rotate(0deg) scale(1.2); + z-index: 10; + + .wb-media-cover { + box-shadow: 0 8px 20px rgba(0, 0, 0, 0.5); + } + } +} + +.wb-media-pin { + position: absolute; + top: -8px; + left: 50%; + transform: translateX(-50%); + width: 12px; + height: 12px; + background: radial-gradient(circle, #888 0%, #444 60%); + border-radius: 50%; + box-shadow: + 0 2px 4px rgba(0, 0, 0, 0.4), + inset 0 1px 2px rgba(255, 255, 255, 0.3); + z-index: 2; + + // Pin needle + &::before { + content: ""; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + width: 2px; + height: 2px; + background: #222; + border-radius: 50%; + } +} + +.wb-media-cover { + width: 100%; + max-width: 120px; + height: auto; + max-height: 180px; + display: block; + object-fit: cover; + border-radius: 3px; + box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3); + transition: box-shadow 0.2s ease; +} + +.wb-media-label { + position: absolute; + bottom: -5px; + right: -5px; + background: linear-gradient(135deg, #ffd700 0%, #ffed4e 100%); + color: #333; + font-family: "Courier New", monospace; + font-size: 10px; + font-weight: bold; + padding: 2px 6px; + border-radius: 3px; + box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3); + z-index: 3; + letter-spacing: 0.5px; +} + // Bookshelf .bookshelf { width: 400px; diff --git a/assets/sass/style.scss b/assets/sass/style.scss index 8bddcf5..464ff70 100644 --- a/assets/sass/style.scss +++ b/assets/sass/style.scss @@ -691,6 +691,19 @@ body { top: auto; left: auto; } + + /* Monitor stand */ + > .monitor-stand { + position: absolute; + background: none; + box-shadow: none; + bottom: -80px; + left: 50%; + transform: translateX(-50%); + width: 120px; + height: 80px; + z-index: -1; + } } /* CRT Monitor bezel */ @@ -762,17 +775,6 @@ body { } } -/* Monitor stand */ -.monitor-stand { - position: absolute; - bottom: -80px; - left: 50%; - transform: translateX(-50%); - width: 120px; - height: 80px; - z-index: -1; -} - /* Stand neck */ .stand-neck { width: 40px; diff --git a/content/now/currently.md b/content/now/currently.md index d6e2653..2db2d68 100644 --- a/content/now/currently.md +++ b/content/now/currently.md @@ -3,13 +3,13 @@ title: Currently width: 500px height: 550px sticky_notes: - - text: "Remember to update blog!" - color: "yellow" - - text: "New feature idea: dark mode toggle" + - text: "Scroll right for more..." color: "pink" + - text: "This is a mix of a 'now' and a 'uses' page" + color: "yellow" --- **Tinkering with:** - ritual.sh - This website! I've been exploring the indieweb movement and working on this site to carve out my own little digital garden to tend. I'm having a lot of fun making art using pure CSS. -- After years of using Linux exclusively for servers, Microsoft's relentless [enshittification](https://en.wikipedia.org/wiki/Enshittification) of Windows finally pushed me to migrate my actual workstations. Now running Linux on most machines (currently experimenting with Bazzite) and MacOS on the rest. Desktop customisation is as enjoyable as it was back in the day - maybe more so. +- After years of using Linux exclusively for servers, Microsoft's relentless [enshittification](https://en.wikipedia.org/wiki/Enshittification) of Windows finally pushed me to migrate my actual workstations. Now running Linux on most machines (currently experimenting with Bazzite) and MacOS on the rest. Customising my desktop has been pretty fun. diff --git a/content/now/media.md b/content/now/media.md new file mode 100644 index 0000000..c79ede6 --- /dev/null +++ b/content/now/media.md @@ -0,0 +1,30 @@ +--- +title: Media +width: 550px +height: 650px +sticky_notes: + - text: "Check my [audio page](/audio) for what I am listening to!" + color: "yellow" +media_items: + - image: "images/books/alchemised.png" + title: "Alchemised" + current: true + - image: "images/dvds/dandadan.png" + title: "DAN DA DAN" + current: true + - image: "images/dvds/assassination_classroom.jpg" + title: "Assassination Classroom" +--- + +**Reading:** + +- Alchemised - SenLinYu + +**Watching:** + +- DanDaDan - Season 1 +- Assassination Classroom - Season 1 + +**Playing:** + +- Minecraft (Meatballcraft modpack) with friends diff --git a/layouts/now/single.html b/layouts/now/single.html index 59d9de0..5845b18 100644 --- a/layouts/now/single.html +++ b/layouts/now/single.html @@ -29,7 +29,8 @@ ) ) }} - {{ partial "elements/whiteboard.html" (dict "file" "currently.md" "context" .) }} + {{ partial "elements/whiteboard.html" (dict "file" "currently.md" "context" + .) }} @@ -38,9 +39,9 @@ "units" (slice (dict "type" "server" "label" "NAS-01" "led1" "green" "led2" "green" "drives" 1 "size" 1) (dict "type" "spacer") - (dict "type" "storage" "label" "SAN-Primary" "drives" 12 "size" 3) + (dict "type" "storage" "label" "SAN-Primary" "drives" 20 "size" 3) (dict "type" "spacer") - (dict "type" "server" "label" "Backup-01" "led1" "blue" "led2" "amber" "drives" 2) + (dict "type" "server" "label" "BACKUP-01" "led1" "blue" "led2" "amber" "drives" 1) (dict "type" "blank") ) ) }} @@ -49,22 +50,16 @@
-

$ whoami

-

dan@ritual.sh

+

$ neofetch

+

NERV

+

---

+

CPU: AMD Ryzen 7 9800X3D @ 5.46 Ghz

+

GPU: AMD Radeon RX 7900 XTX

+

RAM: 64 GiB @ 6000 MT/S


-

$ cat current_stack.txt

-

Languages: JavaScript, TypeScript, Python, Rust (learning)

-

Frontend: React, Vue, Hugo

-

Backend: Node.js, FastAPI

-

DevOps: Docker, Linux, Git

-

Interests: Homelab, Self-hosting, Open Source

-
-

$ uptime

-

- {{ now.Format "15:04:05" }} up 42 days, load average: 0.15, 0.23, - 0.18 -

+

OS: Bazzite


+

Usage: Main gaming and development machine

_

@@ -72,25 +67,12 @@
- - {{ partial "elements/bookshelf.html" (dict - "width" "350px" - "height" "600px" - "title" "Currently Reading" - "type" "books" - "shelves" 1 - "items" (slice - (dict "image" "images/books/alchemised.png" "title" "Alchemised" "current" true) - ) - ) }} - - - {{ partial "elements/whiteboard.html" (dict "file" "daily-drivers.md" "context" .) }} + {{ partial "elements/whiteboard.html" (dict "file" "media.md" "context" .) }} @@ -110,28 +92,25 @@ )) }} - {{ partial "elements/whiteboard.html" (dict "file" "learning-queue.md" "context" .) }} + {{ partial "elements/whiteboard.html" (dict "file" "learning-queue.md" + "context" .) }} - {{ partial "elements/server-rack.html" (dict "height" "550px" "title" - "INFRA-01" "units" (slice (dict "type" "ups" "label" "UPS-Primary" - "capacity" "98" "size" 2) (dict "type" "spacer") (dict "type" "switch" - "label" "Edge-SW-01" "ports" 24) (dict "type" "server" "label" "Firewall" - "led1" "green" "led2" "green" "drives" 1) (dict "type" "server" "label" - "DNS/DHCP" "led1" "green" "led2" "blue" "drives" 1) (dict "type" "blank") - (dict "type" "blank") ) ) }} - - - - {{ partial "elements/bookshelf.html" (dict "width" "400px" "height" "550px" - "title" "DVD Collection" "type" "dvds" "shelves" 2 "items" (slice (dict - "image" "images/dvds/dandadan.png" "title" "DAN DA DAN" "current" true) - (dict "image" "images/dvds/assassination_classroom.jpg" "title" - "Assassination Classroom") ) ) }} + {{ partial "elements/server-rack.html" + (dict "height" "550px" "title" "INFRA-01" "units" (slice + (dict "type" "ups" "label" "UPS-Primary" "capacity" "98" "size" 2) + (dict "type" "spacer") + (dict "type" "switch" "label" "Edge-SW-01" "ports" 24) + (dict "type" "server" "label" "Firewall" "led1" "green" "led2" "green" "drives" 1) + (dict "type" "server" "label" "DHCP" "led1" "green" "led2" "blue" "drives" 1) + (dict "type" "blank") + (dict "type" "blank") + ) ) }} - {{ partial "elements/whiteboard.html" (dict "file" "homelab.md" "context" .) }} + {{ partial "elements/whiteboard.html" (dict "file" "homelab.md" "context" .) + }} {{ partial "elements/monitor-screen.html" (dict "width" "400px" "height" diff --git a/layouts/partials/elements/whiteboard.html b/layouts/partials/elements/whiteboard.html index 678f383..7abf7c8 100644 --- a/layouts/partials/elements/whiteboard.html +++ b/layouts/partials/elements/whiteboard.html @@ -18,6 +18,25 @@ {{ end }} {{ end }} + {{ if .Params.media_items }} +
+ {{ range $index, $item := .Params.media_items }} + {{ if lt $index 6 }} + {{ $image := resources.Get $item.image }} + {{ if $image }} + {{ $resized := $image.Fit "240x360" }} +
+
+ {{ $item.title }} + {{ if $item.current }} +
NOW
+ {{ end }} +
+ {{ end }} + {{ end }} + {{ end }} +
+ {{ end }} {{ end }}