From 23369f4ace0cff786993a99d5c8e1199ee229876 Mon Sep 17 00:00:00 2001 From: Dan Date: Mon, 8 Dec 2025 13:46:35 +0000 Subject: [PATCH] Refactors site to use interactive terminal UI Moves site from static HTML to a dynamic terminal interface. This commit represents a major overhaul, introducing: - A functional terminal emulator implemented in JavaScript. - Command parsing and execution framework. - Various terminal commands for navigation and utility functions. - SASS conversion. The old CSS and simple HTML are completely removed. A new Hugo theme is implemented. --- assets/css/extended/custom.css | 48 - assets/js/commands/core.js | 41 + assets/js/commands/custom.js | 101 ++ assets/js/commands/navigation.js | 52 + assets/js/commands/utility.js | 97 ++ assets/js/init.js | 16 + assets/js/lavalamp.js | 70 + assets/js/terminal.js | 190 +++ assets/sass/_normalize.scss | 255 ++++ assets/sass/partials/_global-styles.scss | 23 + assets/sass/partials/_lavalamp.scss | 122 ++ assets/sass/partials/_now-playing.scss | 28 + assets/sass/partials/_terminal.scss | 99 ++ assets/sass/partials/_vu-meter.scss | 191 +++ assets/sass/style.scss | 1762 ++++++++++++++++++++++ config.yml | 100 +- content/posts/2024-01-30-.md | 11 - content/posts/2024-02-07-.md | 11 - content/posts/2024-02-08-.md | 16 - layouts/_default/list.html | 121 -- layouts/_default/single.html | 69 - layouts/index.html | 401 +++++ layouts/partials/buy_me_a_coffee.html | 3 - layouts/partials/comments.html | 7 - layouts/partials/footer.html | 130 -- layouts/partials/head.html | 157 -- layouts/partials/header.html | 149 -- layouts/partials/home_info.html | 34 - layouts/partials/lavalamp.html | 25 + layouts/partials/nowplaying.html | 1 - layouts/partials/terminal.html | 0 static/android-chrome-192x192.png | Bin 8050 -> 0 bytes static/android-chrome-512x512.png | Bin 16744 -> 0 bytes static/apple-touch-icon.png | Bin 7488 -> 20500 bytes static/css/nowplaying.css | 28 - static/favicon-16x16.png | Bin 1142 -> 0 bytes static/favicon-32x32.png | Bin 1468 -> 0 bytes static/favicon-96x96.png | Bin 0 -> 7393 bytes static/favicon.ico | Bin 15086 -> 15086 bytes static/favicon.svg | 3 + static/mstile-150x150.png | Bin 5629 -> 0 bytes static/site.webmanifest | 21 + static/web-app-manifest-192x192.png | Bin 0 -> 21323 bytes static/web-app-manifest-512x512.png | Bin 0 -> 94361 bytes themes/PaperMod | 1 - themes/hugo-starter | 1 + 46 files changed, 3524 insertions(+), 860 deletions(-) delete mode 100644 assets/css/extended/custom.css create mode 100644 assets/js/commands/core.js create mode 100644 assets/js/commands/custom.js create mode 100644 assets/js/commands/navigation.js create mode 100644 assets/js/commands/utility.js create mode 100644 assets/js/init.js create mode 100644 assets/js/lavalamp.js create mode 100644 assets/js/terminal.js create mode 100644 assets/sass/_normalize.scss create mode 100644 assets/sass/partials/_global-styles.scss create mode 100644 assets/sass/partials/_lavalamp.scss create mode 100644 assets/sass/partials/_now-playing.scss create mode 100644 assets/sass/partials/_terminal.scss create mode 100644 assets/sass/partials/_vu-meter.scss create mode 100644 assets/sass/style.scss delete mode 100644 content/posts/2024-01-30-.md delete mode 100644 content/posts/2024-02-07-.md delete mode 100644 content/posts/2024-02-08-.md delete mode 100644 layouts/_default/list.html delete mode 100644 layouts/_default/single.html create mode 100644 layouts/index.html delete mode 100644 layouts/partials/buy_me_a_coffee.html delete mode 100644 layouts/partials/comments.html delete mode 100644 layouts/partials/footer.html delete mode 100644 layouts/partials/head.html delete mode 100644 layouts/partials/header.html delete mode 100644 layouts/partials/home_info.html create mode 100644 layouts/partials/lavalamp.html create mode 100644 layouts/partials/terminal.html delete mode 100644 static/android-chrome-192x192.png delete mode 100644 static/android-chrome-512x512.png delete mode 100755 static/css/nowplaying.css delete mode 100644 static/favicon-16x16.png delete mode 100644 static/favicon-32x32.png create mode 100644 static/favicon-96x96.png create mode 100644 static/favicon.svg delete mode 100644 static/mstile-150x150.png create mode 100644 static/site.webmanifest create mode 100644 static/web-app-manifest-192x192.png create mode 100644 static/web-app-manifest-512x512.png delete mode 160000 themes/PaperMod create mode 160000 themes/hugo-starter diff --git a/assets/css/extended/custom.css b/assets/css/extended/custom.css deleted file mode 100644 index abeb726..0000000 --- a/assets/css/extended/custom.css +++ /dev/null @@ -1,48 +0,0 @@ -.buy-me-a-coffee { - text-align: center; - border-radius: var(--radius); - background: var(--code-bg); - border: 1px solid var(--border); - - background-color: var(--secondary); - color: var(--tertiary); - padding: var(--gap); -} - -article a[href^="http"]:not(article .social-icons a, .paginav a, .buy-me-a-coffee a, .post-tags a, a.entry-link), -article a[href^="https://"]:not(article .social-icons a, .paginav a, .buy-me-a-coffee a, .post-tags a, a.entry-link) -{ - box-shadow: none; - background: linear-gradient(to left, #c34722, #fdbb2d 100%); - background-position: 0 100%; - background-size: 100% 2px; - background-repeat: repeat-x; -} - -.row { - display: flex; - flex-direction: row; - flex-wrap: nowrap; - width: 100%; - gap: 14px; -} - -.col { - display: flex; - flex-direction: column; - flex-basis: 100%; - flex: 1; -} - -.photo { - flex: 25%; - - img { - border-radius: var(--radius); - - } -} - -.intro-text { - flex: 75%; -} \ No newline at end of file diff --git a/assets/js/commands/core.js b/assets/js/commands/core.js new file mode 100644 index 0000000..7efae8b --- /dev/null +++ b/assets/js/commands/core.js @@ -0,0 +1,41 @@ +// Core Commands Module +// These are essential commands for the terminal + +// Help command +window.terminal.registerCommand("help", "Display available commands", () => { + window.terminal.print("Available commands:", "success"); + window.terminal.print(""); + + const commands = Object.keys(window.terminal.commands).sort(); + commands.forEach((cmd) => { + const desc = window.terminal.commands[cmd].description || "No description"; + window.terminal.print(` ${cmd.padEnd(15)} - ${desc}`); + }); + window.terminal.print(""); +}); + +// Clear command +window.terminal.registerCommand("clear", "Clear the terminal screen", () => { + window.terminal.clear(); +}); + +// Echo command +window.terminal.registerCommand("echo", "Echo text to the terminal", (args) => { + window.terminal.print(args.join(" ")); +}); + +// History command +window.terminal.registerCommand("history", "Show command history", () => { + if (window.terminal.history.length === 0) { + window.terminal.print("No commands in history"); + return; + } + + window.terminal.print("Command history:", "info"); + window.terminal.history + .slice() + .reverse() + .forEach((cmd, idx) => { + window.terminal.print(` ${idx + 1}. ${cmd}`); + }); +}); diff --git a/assets/js/commands/custom.js b/assets/js/commands/custom.js new file mode 100644 index 0000000..68ea937 --- /dev/null +++ b/assets/js/commands/custom.js @@ -0,0 +1,101 @@ +// Custom Commands Module +// Add your custom commands here! +// This file is a template for creating your own commands + +// Example: Weather command (placeholder) +// window.terminal.registerCommand( +// "weather", +// "Show weather information", +// (args) => { +// const city = args.length > 0 ? args.join(" ") : "your location"; +// window.terminal.printInfo(`Fetching weather for ${city}...`); +// window.terminal.print("☀️ Sunny, 72°F"); +// window.terminal.print(""); +// window.terminal.printWarning( +// "Note: This is a placeholder. Integrate with a real weather API!", +// ); +// }, +// ); + +// Example: Random quote +// window.terminal.registerCommand("quote", "Display a random quote", () => { +// const quotes = [ +// "The only way to do great work is to love what you do. - Steve Jobs", +// "Innovation distinguishes between a leader and a follower. - Steve Jobs", +// "Stay hungry, stay foolish. - Steve Jobs", +// "First, solve the problem. Then, write the code. - John Johnson", +// ]; + +// const randomQuote = quotes[Math.floor(Math.random() * quotes.length)]; +// window.terminal.printSuccess(randomQuote); +// }); + +// Example: List command (demonstrates dynamic content) +// window.terminal.registerCommand( +// "list", +// "List items in a collection", +// (args) => { +// if (args.length === 0) { +// window.terminal.printError("Usage: list "); +// window.terminal.print("Available categories: files, users, tasks"); +// return; +// } + +// const category = args[0].toLowerCase(); + +// switch (category) { +// case "files": +// window.terminal.print("Files:", "info"); +// window.terminal.print(" 📄 document.txt"); +// window.terminal.print(" 📄 notes.md"); +// window.terminal.print(" 📁 projects/"); +// break; +// case "users": +// window.terminal.print("Users:", "info"); +// window.terminal.print(" 👤 admin"); +// window.terminal.print(" 👤 guest"); +// break; +// case "tasks": +// window.terminal.print("Tasks:", "info"); +// window.terminal.print(" ✓ Complete terminal setup"); +// window.terminal.print(" ☐ Add more commands"); +// window.terminal.print(" ☐ Customize appearance"); +// break; +// default: +// window.terminal.printError(`Unknown category: ${category}`); +// } +// }, +// ); + +// Example: Color command (demonstrates HTML output) +window.terminal.registerCommand("colors", "Display available colors", () => { + window.terminal.print("Available terminal colors:", "info"); + window.terminal.print(""); + window.terminal.printHTML("● Standard (green)"); + window.terminal.printHTML('● Error (red)'); + window.terminal.printHTML( + '● Success (bright green)', + ); + window.terminal.printHTML('● Info (blue)'); + window.terminal.printHTML('● Warning (orange)'); +}); + +// ADD YOUR OWN COMMANDS BELOW THIS LINE +// ======================================== + +// Template for new command: +/* +window.terminal.registerCommand('commandname', 'Command description', (args) => { + // args is an array of arguments + // Example: if user types "mycommand hello world" + // args will be ['hello', 'world'] + + // Print output using: + window.terminal.print('Regular text'); + window.terminal.printSuccess('Success message'); + window.terminal.printError('Error message'); + window.terminal.printInfo('Info message'); + window.terminal.printWarning('Warning message'); + window.terminal.printHTML('HTML content'); +}); +*/ diff --git a/assets/js/commands/navigation.js b/assets/js/commands/navigation.js new file mode 100644 index 0000000..5efd761 --- /dev/null +++ b/assets/js/commands/navigation.js @@ -0,0 +1,52 @@ +// Navigation Commands Module +// Commands for navigating to different pages or URLs + +// Navigate to URL command +window.terminal.registerCommand("goto", "Navigate to a URL", (args) => { + if (args.length === 0) { + window.terminal.printError("Usage: goto "); + window.terminal.print("Examples:"); + window.terminal.print(" goto google.com"); + window.terminal.print(" goto https://github.com"); + return; + } + + const url = args[0]; + window.terminal.printInfo(`Navigating to ${url}...`); + + setTimeout(() => { + window.location.href = url.startsWith("http") ? url : `https://${url}`; + }, 500); +}); + +// Open in new tab command +window.terminal.registerCommand("open", "Open URL in new tab", (args) => { + if (args.length === 0) { + window.terminal.printError("Usage: open "); + window.terminal.print("Examples:"); + window.terminal.print(" open google.com"); + window.terminal.print(" open https://github.com"); + return; + } + + const url = args[0]; + window.terminal.printInfo(`Opening ${url} in new tab...`); + + const fullUrl = url.startsWith("http") ? url : `https://${url}`; + window.open(fullUrl, "_blank"); +}); + +// Reload page command +window.terminal.registerCommand("reload", "Reload the current page", () => { + window.terminal.printInfo("Reloading page..."); + setTimeout(() => { + window.location.reload(); + }, 500); +}); + +// PAGE NAVIGATION + +// About command +window.terminal.registerCommand("about", "About this site", () => { + window.location.href = "/about/"; +}); diff --git a/assets/js/commands/utility.js b/assets/js/commands/utility.js new file mode 100644 index 0000000..dd00f0a --- /dev/null +++ b/assets/js/commands/utility.js @@ -0,0 +1,97 @@ +// Utility Commands Module +// Useful utility commands + +// Time command +window.terminal.registerCommand("time", "Display current time", () => { + const now = new Date(); + window.terminal.print(`Current time: ${now.toLocaleString()}`); +}); + +// Calculator command +window.terminal.registerCommand("calc", "Simple calculator", (args) => { + if (args.length === 0) { + window.terminal.printError("Usage: calc "); + window.terminal.print("Example: calc 5 + 3"); + return; + } + + try { + const expression = args.join(" "); + // Note: eval is dangerous in production! This is just for demo purposes + const result = eval(expression); + window.terminal.printSuccess(`Result: ${result}`); + } catch (error) { + window.terminal.printError("Invalid expression"); + } +}); + +// Demo command +// window.terminal.registerCommand("demo", "Show demo content", () => { +// window.terminal.printSuccess("=== Demo Content ==="); +// window.terminal.print(""); +// window.terminal.print("This is regular text"); +// window.terminal.printInfo("This is info text"); +// window.terminal.printWarning("This is warning text"); +// window.terminal.printError("This is error text"); +// window.terminal.print(""); +// window.terminal.printHTML( +// 'You can also use HTML with links!', +// ); +// }); + +// ASCII art command +// window.terminal.registerCommand("ascii", "Display ASCII art", () => { +// const art = ` +// _____ _ _ +// |_ _|__ _ __ _ __ ___ (_)_ __ __ _| | +// | |/ _ \\ '__| '_ \` _ \\| | '_ \\ / _\` | | +// | | __/ | | | | | | | | | | | (_| | | +// |_|\\___|_| |_| |_| |_|_|_| |_|\\__,_|_| +// `; +// window.terminal.print(art, "success"); +// }); + +// ASCII art command +window.terminal.registerCommand("nerv", "Display NERV logo", () => { + const art = ` + # ## %*### + #****************** + #******************* + ******************** + %* ************************** + *** #***************************** + ** *******************************% + *# ********************************* + %* %************************************ + ****************************************** + ************************************* + **********************# ******#* + *** *% %** %********************** + *%**# * ** #************************* + * *** * ** ************************* + * %**# * **#####*************************# + * *** * ** * %**********************% + * %**#* ** #********************* + * *** ** %% ********************# + *% %* %** ** ******************* + %****************** + #********# #******************* + ** #** ****************** + ** **# *** *************# + ** #** **# ************ + *******# **% %********** + ** %** ** *%#*******# + ** *** #**#* ****** + ** #**% *** ****# + %****% ***% * %*** + #* + + `; + window.terminal.print(art, "success"); +}); + +// Greet command +window.terminal.registerCommand("greet", "Greet the user", (args) => { + const name = args.length > 0 ? args.join(" ") : "User"; + window.terminal.printSuccess(`Hello, ${name}! Welcome to the terminal.`); +}); diff --git a/assets/js/init.js b/assets/js/init.js new file mode 100644 index 0000000..856ce56 --- /dev/null +++ b/assets/js/init.js @@ -0,0 +1,16 @@ +// Terminal Initialization Script +// This script creates the terminal instance immediately +// so command modules can register commands + +// Create global terminal instance immediately +window.terminal = new TerminalShell(); + +// Boot the terminal when DOM is ready +if (document.readyState === "loading") { + document.addEventListener("DOMContentLoaded", () => { + terminal.boot(); + }); +} else { + // DOM already loaded + terminal.boot(); +} diff --git a/assets/js/lavalamp.js b/assets/js/lavalamp.js new file mode 100644 index 0000000..8781e82 --- /dev/null +++ b/assets/js/lavalamp.js @@ -0,0 +1,70 @@ +(function () { + const lavaLamp = document.getElementById("lavaLamp"); + let blobs = []; + let baseSpeed = 0.8; + + function createBlob() { + const blob = document.createElement("div"); + blob.className = "blob"; + const size = Math.random() * 30 + 20; // Smaller blobs (20-50px) + const startY = Math.random() * 100; // Within ~150px height + const duration = (Math.random() * 8 + 12) / baseSpeed; + const maxX = 60 - size; // Adjusted for narrower tube (80px wide) + const startX = Math.random() * maxX; + + blob.style.width = `${size}px`; + blob.style.height = `${size}px`; + blob.style.left = `${startX}px`; + blob.style.setProperty("--duration", `${duration}s`); + blob.style.setProperty("--start-x", "0px"); + blob.style.setProperty("--start-y", `${startY}px`); + blob.style.setProperty("--mid1-x", `${Math.random() * 15 - 15}px`); + blob.style.setProperty("--mid1-y", `${Math.random() * -40 - 40}px`); + blob.style.setProperty("--mid2-x", `${Math.random() * 20 - 20}px`); + blob.style.setProperty("--mid2-y", `${Math.random() * -80 - 40}px`); + blob.style.setProperty("--mid3-x", `${Math.random() * 15 - 15}px`); + blob.style.setProperty("--mid3-y", `${Math.random() * -60 - 10}px`); + blob.style.setProperty("--scale1", (Math.random() * 0.3 + 1.0).toFixed(2)); + blob.style.setProperty("--scale2", (Math.random() * 0.3 + 0.85).toFixed(2)); + blob.style.setProperty("--scale3", (Math.random() * 0.3 + 0.95).toFixed(2)); + blob.style.animationDelay = `${Math.random() * -20}s`; + + return blob; + } + + function updateBlobColors() { + const color1 = "#FF7800"; + const color2 = "#E01B24"; + const gradient = `radial-gradient(circle at 30% 30%, ${color1}, ${color2})`; + blobs.forEach((blob) => { + blob.style.background = gradient; + }); + } + + function updateLampBackground() { + const bg1 = "#F8E45C"; + const bg2 = "#FF7800"; + lavaLamp.style.background = `linear-gradient(180deg, ${bg1} 0%, ${bg2} 100%)`; + } + + function updateBlobCount() { + const count = parseInt(6); + while (blobs.length > count) { + const blob = blobs.pop(); + lavaLamp.removeChild(blob); + } + while (blobs.length < count) { + const blob = createBlob(); + blobs.push(blob); + lavaLamp.appendChild(blob); + updateBlobColors(); + } + } + + function init() { + updateBlobCount(); + updateLampBackground(); + } + + init(); +})(); diff --git a/assets/js/terminal.js b/assets/js/terminal.js new file mode 100644 index 0000000..45ff5e8 --- /dev/null +++ b/assets/js/terminal.js @@ -0,0 +1,190 @@ +// Terminal Shell System +class TerminalShell { + constructor() { + this.output = document.getElementById("output"); + this.input = document.getElementById("input"); + this.inputContainer = document.getElementById("input-container"); + this.history = []; + this.historyIndex = -1; + this.commands = {}; + + this.setupEventListeners(); + } + + // Boot sequence + async boot() { + const bootMessages = [ + " _ _ _____ ______ __", + " | \\ | | ____| _ \\ \\ / /", + " | \\| | _| | |_) \\ \\ / / ", + " | |\\ | |___| _ < \\ V / ", + " |_| \\_|_____|_| \\_\\ \\_/ ", + "", + "NERV OS v2.015 - MAGI System Interface", + "Initializing A.T. Field protocols...", + "CASPER... ONLINE", + "BALTHASAR... ONLINE", + "MELCHIOR... ONLINE", + "Synchronization ratio: 41.3%... 67.8%... 89.2%... OK", + "Loading Evangelion Unit-01 core drivers... OK", + "Mounting LCL interface... OK", + "Neural connection established... OK", + "", + "Running pattern analysis... PATTERN BLUE", + "", + "All systems optimal.", + "", + "", + ]; + for (let i = 0; i < bootMessages.length; i++) { + await this.sleep(100); + const line = document.createElement("div"); + line.className = "output-line boot-line"; + line.textContent = bootMessages[i]; + line.style.animationDelay = "0s"; + this.output.appendChild(line); + this.scrollToBottom(); + } + + this.printHTML( + 'Type "help" for available commands.', + ); + + this.printHTML( + 'This site is under contstruction. There\'s nothing of interest here yet.', + ); + + this.inputContainer.classList.remove("hidden"); + this.input.focus(); + } + + // Utility function for delays + sleep(ms) { + return new Promise((resolve) => setTimeout(resolve, ms)); + } + + // Setup event listeners + setupEventListeners() { + this.input.addEventListener("keydown", (e) => { + if (e.key === "Enter") { + e.preventDefault(); + this.executeCommand(this.input.value.trim()); + this.input.value = ""; + } else if (e.key === "ArrowUp") { + e.preventDefault(); + this.navigateHistory("up"); + } else if (e.key === "ArrowDown") { + e.preventDefault(); + this.navigateHistory("down"); + } + }); + + // Keep input focused + document.addEventListener("click", () => { + this.input.focus(); + }); + } + + // Command history navigation + navigateHistory(direction) { + if (this.history.length === 0) return; + + if (direction === "up") { + if (this.historyIndex < this.history.length - 1) { + this.historyIndex++; + this.input.value = this.history[this.historyIndex]; + } + } else if (direction === "down") { + if (this.historyIndex > 0) { + this.historyIndex--; + this.input.value = this.history[this.historyIndex]; + } else { + this.historyIndex = -1; + this.input.value = ""; + } + } + } + + // Execute command + executeCommand(commandString) { + if (!commandString) return; + + // Echo the command + this.print(`> ${commandString}`); + + // Add to history + this.history.unshift(commandString); + this.historyIndex = -1; + + // Parse command and arguments + const parts = commandString.split(" "); + const command = parts[0].toLowerCase(); + const args = parts.slice(1); + + // Execute command + if (this.commands[command]) { + try { + this.commands[command](args); + } catch (error) { + this.printError(`Error executing command: ${error.message}`); + } + } else { + this.printError(`Command not found: ${command}`); + } + + this.scrollToBottom(); + } + + // Register a new command + registerCommand(name, description, callback) { + this.commands[name.toLowerCase()] = callback; + this.commands[name.toLowerCase()].description = description; + } + + // Print methods + print(text, className = "") { + const line = document.createElement("div"); + line.className = `output-line ${className}`; + + if (typeof text === "string") { + line.textContent = text; + } else { + line.appendChild(text); + } + + this.output.appendChild(line); + } + + printHTML(html, className = "") { + const line = document.createElement("div"); + line.className = `output-line ${className}`; + line.innerHTML = html; + this.output.appendChild(line); + } + + printError(text) { + this.print(text, "error"); + } + + printSuccess(text) { + this.print(text, "success"); + } + + printInfo(text) { + this.print(text, "info"); + } + + printWarning(text) { + this.print(text, "warning"); + } + + scrollToBottom() { + this.output.parentElement.scrollTop = + this.output.parentElement.scrollHeight; + } + + // Clear the terminal + clear() { + this.output.innerHTML = ""; + } +} diff --git a/assets/sass/_normalize.scss b/assets/sass/_normalize.scss new file mode 100644 index 0000000..ba0a4cf --- /dev/null +++ b/assets/sass/_normalize.scss @@ -0,0 +1,255 @@ +/*! modern-normalize | MIT License | https://github.com/sindresorhus/modern-normalize */ + +/* Document + ========================================================================== */ + +/** + * Use a better box model (opinionated). + */ + + html { + box-sizing: border-box; + } + + * { + box-sizing: inherit; + &::before, &::after { + box-sizing: inherit; + } + } + + /** + * Use a more readable tab size (opinionated). + */ + + :root { + -moz-tab-size: 4; + tab-size: 4; + } + + /** + * 1. Correct the line height in all browsers. + * 2. Prevent adjustments of font size after orientation changes in iOS. + */ + + html { + line-height: 1.15; + /* 1 */ + -webkit-text-size-adjust: 100%; + /* 2 */ + } + + /* Sections + ========================================================================== */ + + /** + * Remove the margin in all browsers. + */ + + body { + margin: 0; + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; + } + + /** + * Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3) + */ + + /* Grouping content + ========================================================================== */ + + /** + * Add the correct height in Firefox. + */ + + hr { + height: 0; + } + + /* Text-level semantics + ========================================================================== */ + + /** + * Add the correct text decoration in Chrome, Edge, and Safari. + */ + + abbr[title] { + text-decoration: underline dotted; + } + + /** + * Add the correct font weight in Chrome, Edge, and Safari. + */ + + b, strong { + font-weight: bolder; + } + + /** + * 1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3) + * 2. Correct the odd `em` font sizing in all browsers. + */ + + code, kbd, samp, pre { + font-family: SFMono-Regular, Consolas, 'Liberation Mono', Menlo, Courier, monospace; + /* 1 */ + font-size: 1em; + /* 2 */ + } + + /** + * Add the correct font size in all browsers. + */ + + small { + font-size: 80%; + } + + /** + * Prevent `sub` and `sup` elements from affecting the line height in all browsers. + */ + + sub, sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; + } + + sub { + bottom: -0.25em; + } + + sup { + top: -0.5em; + } + + /* Forms + ========================================================================== */ + + /** + * 1. Change the font styles in all browsers. + * 2. Remove the margin in Firefox and Safari. + */ + + button, input, optgroup, select, textarea { + font-family: inherit; + /* 1 */ + font-size: 100%; + /* 1 */ + line-height: 1.15; + /* 1 */ + margin: 0; + /* 2 */ + } + + /** + * Remove the inheritance of text transform in Edge and Firefox. + * 1. Remove the inheritance of text transform in Firefox. + */ + + button, select { + /* 1 */ + text-transform: none; + } + + /** + * Correct the inability to style clickable types in iOS and Safari. + */ + + button, [type='button'], [type='reset'], [type='submit'] { + -webkit-appearance: button; + } + + /** + * Remove the inner border and padding in Firefox. + */ + + button::-moz-focus-inner, [type='button']::-moz-focus-inner, [type='reset']::-moz-focus-inner, [type='submit']::-moz-focus-inner { + border-style: none; + padding: 0; + } + + /** + * Restore the focus styles unset by the previous rule. + */ + + button:-moz-focusring, [type='button']:-moz-focusring, [type='reset']:-moz-focusring, [type='submit']:-moz-focusring { + outline: 1px dotted ButtonText; + } + + /** + * Correct the padding in Firefox. + */ + + fieldset { + padding: 0.35em 0.75em 0.625em; + } + + /** + * Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers. + */ + + legend { + padding: 0; + } + + /** + * Add the correct vertical alignment in Chrome and Firefox. + */ + + progress { + vertical-align: baseline; + } + + /** + * Correct the cursor style of increment and decrement buttons in Safari. + */ + + [type='number'] { + &::-webkit-inner-spin-button, &::-webkit-outer-spin-button { + height: auto; + } + } + + /** + * 1. Correct the odd appearance in Chrome and Safari. + * 2. Correct the outline style in Safari. + */ + + [type='search'] { + -webkit-appearance: textfield; + /* 1 */ + outline-offset: -2px; + /* 2 */ + &::-webkit-search-decoration { + -webkit-appearance: none; + } + } + + /** + * Remove the inner padding in Chrome and Safari on macOS. + */ + + /** + * 1. Correct the inability to style clickable types in iOS and Safari. + * 2. Change font properties to `inherit` in Safari. + */ + + ::-webkit-file-upload-button { + -webkit-appearance: button; + /* 1 */ + font: inherit; + /* 2 */ + } + + /* Interactive + ========================================================================== */ + + /* + * Add the correct display in Chrome and Safari. + */ + + summary { + display: list-item; + } \ No newline at end of file diff --git a/assets/sass/partials/_global-styles.scss b/assets/sass/partials/_global-styles.scss new file mode 100644 index 0000000..dda5538 --- /dev/null +++ b/assets/sass/partials/_global-styles.scss @@ -0,0 +1,23 @@ +footer[role="contentinfo"] { + position: absolute; + bottom: 0; + right: 0; + z-index: 10000; + background: #000; // or whatever color you want + color: #0f0; // match your terminal green theme + padding: 5px; + text-align: center; + font-family: monospace; + border-top: 1px solid #0f0; + border-left: 1px solid #0f0; + border-top-left-radius: 5px; + + a { + color: #0f0; + text-decoration: none; + + &:hover { + text-decoration: underline; + } + } +} diff --git a/assets/sass/partials/_lavalamp.scss b/assets/sass/partials/_lavalamp.scss new file mode 100644 index 0000000..5dc916b --- /dev/null +++ b/assets/sass/partials/_lavalamp.scss @@ -0,0 +1,122 @@ +.lava-lamp-container { + position: absolute; + bottom: 20%; + left: 20%; + width: 80px; + height: 150px; + display: flex; + flex-direction: column; + align-items: center; + z-index: 999; +} + +.lamp-cap { + width: 60%; + height: 10%; + background: linear-gradient(180deg, #c0c0c0 0%, #888 50%, #666 100%); + border-radius: 60px 60px 0 0; + box-shadow: + 0 2px 8px rgba(0, 0, 0, 0.5), + inset 0 2px 4px rgba(255, 255, 255, 0.3); + position: relative; + z-index: 10; +} + +.lava-lamp { + position: relative; + width: 100%; + height: 102%; /*Being above 100% fixes the occasional gap when resizing the page, theoretically */ + background: var(--lamp-bg, linear-gradient(180deg, #2a1a4a 0%, #1a0a3a 100%)); + clip-path: polygon(20% 0, 80% 0, 100% 100%, 0% 100%); + overflow: hidden; + box-shadow: + inset 0 0 60px rgba(0, 0, 0, 0.3), + inset -10px 0 40px rgba(255, 255, 255, 0.1), + inset 10px 0 40px rgba(0, 0, 0, 0.2); + filter: drop-shadow(0 10px 30px rgba(0, 0, 0, 0.5)); +} + +.lava-lamp::before { + content: ""; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: linear-gradient( + 90deg, + transparent 0%, + rgba(255, 255, 255, 0.15) 20%, + rgba(255, 255, 255, 0.05) 40%, + transparent 60% + ); + pointer-events: none; +} + +.lamp-base { + width: 100%; + height: 20%; + background: linear-gradient(180deg, #888 0%, #555 40%, #333 100%); + border-radius: 0 0 40px 40px / 0 0 60px 60px; + box-shadow: + 0 10px 30px rgba(0, 0, 0, 0.6), + inset 0 5px 10px rgba(255, 255, 255, 0.2), + inset 0 -5px 10px rgba(0, 0, 0, 0.5); + position: relative; + display: flex; + justify-content: center; + align-items: center; +} + +.blob { + position: absolute; + border-radius: 50%; + background: var( + --blob-color, + radial-gradient(circle at 30% 30%, #ff6b9d, #c44569) + ); + filter: url(#goo); + animation: float var(--duration) ease-in-out infinite; + opacity: 0.95; + mix-blend-mode: normal; + z-index: 3; +} + +@keyframes float { + 0%, + 100% { + transform: translate(var(--start-x), var(--start-y)) scale(1); + } + 25% { + transform: translate(var(--mid1-x), var(--mid1-y)) scale(var(--scale1, 1.1)); + } + 50% { + transform: translate(var(--mid2-x), var(--mid2-y)) scale(var(--scale2, 0.9)); + } + 75% { + transform: translate(var(--mid3-x), var(--mid3-y)) + scale(var(--scale3, 1.05)); + } +} + +.lamp-text { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-35%, -50%) rotate(85deg); + font-size: 30px; + font-weight: bold; + color: rgba(224, 27, 36, 0); + transition: color 0.5s ease; + pointer-events: none; + z-index: 1; + letter-spacing: 2px; +} + +.lava-lamp:hover .lamp-text { + color: rgba(224, 27, 36, 0.7); +} + +.lava-lamp:hover { + cursor: pointer; +} diff --git a/assets/sass/partials/_now-playing.scss b/assets/sass/partials/_now-playing.scss new file mode 100644 index 0000000..c6b3d57 --- /dev/null +++ b/assets/sass/partials/_now-playing.scss @@ -0,0 +1,28 @@ +.nowplayingcard { + margin: auto; +} + +.nowplayingcontainer-inner { + transition: 0.3s; + display: inline-flex; + + .trackInfo { + width: 100%; + } + + #album { + display: none; + } +} + +img#trackart { + transition: 0.3s; + width: 100%; + height: 100%; + object-fit: cover; + filter: grayscale(60%); +} + +img#trackart[src=""] { + display: none; +} diff --git a/assets/sass/partials/_terminal.scss b/assets/sass/partials/_terminal.scss new file mode 100644 index 0000000..45182b8 --- /dev/null +++ b/assets/sass/partials/_terminal.scss @@ -0,0 +1,99 @@ +#terminal { + padding: 3px; + height: 100vh; + width: 100%; + overflow-y: auto; + overflow-x: hidden; +} + +.output-line { + margin: 2px 0; + white-space: pre-wrap; + word-wrap: break-word; +} + +.boot-line { + opacity: 0; + animation: fadeIn 0.1s forwards; +} + +@keyframes fadeIn { + to { + opacity: 1; + } +} + +.input-line { + display: flex; + align-items: center; + margin-top: 10px; +} + +.prompt { + color: #00ff00; + margin-right: 8px; +} + +#input { + background: transparent; + border: none; + color: #00ff00; + font-family: monospace; + font-size: 12px; + outline: none; + flex: 1; + caret-color: #00ff00; +} + +.cursor { + display: inline-block; + width: 8px; + height: 18px; + background: #00ff00; + animation: blink 1s infinite; + margin-left: 2px; +} + +@keyframes blink { + 0%, + 49% { + opacity: 1; + } + 50%, + 100% { + opacity: 0; + } +} + +.error { + color: #ff4444; +} + +.success { + color: #44ff44; +} + +.info { + color: #00ffff; +} + +.warning { + color: #ff9900; +} + +#terminal::-webkit-scrollbar { + width: 10px; +} + +#terminal::-webkit-scrollbar-track { + background: #1a1a1a; +} + +#terminal::-webkit-scrollbar-thumb { + background: #00ff00; + border-radius: 5px; +} + +.hidden { + display: none; +} diff --git a/assets/sass/partials/_vu-meter.scss b/assets/sass/partials/_vu-meter.scss new file mode 100644 index 0000000..dc38d14 --- /dev/null +++ b/assets/sass/partials/_vu-meter.scss @@ -0,0 +1,191 @@ +/* VU Meter on desk */ +.vu-meter { + position: absolute; + bottom: 18%; + right: 30%; + width: 120px; + height: 60px; + z-index: 8; +} + +.vu-meter-body { + width: 100%; + height: 100%; + background: linear-gradient(180deg, #2a2a2a 0%, #1a1a1a 100%); + border: 2px solid #333; + border-radius: 4px; + box-shadow: + 0 4px 12px rgba(0, 0, 0, 0.7), + inset 0 2px 4px rgba(255, 255, 255, 0.1), + inset 0 -2px 4px rgba(0, 0, 0, 0.3); + padding: 8px; + display: flex; + flex-direction: column; + gap: 6px; +} + +.vu-meter-screen { + flex: 1; + background: #0a0a0a; + border-radius: 2px; + padding: 6px 4px; + position: relative; + overflow: hidden; + box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.8); +} + +.vu-bars { + display: flex; + align-items: flex-end; + justify-content: space-around; + height: 100%; + gap: 2px; +} + +.vu-bar { + flex: 1; + background: linear-gradient( + to top, + #0f0 0%, + #0f0 60%, + #ff0 60%, + #ff0 85%, + #f00 85%, + #f00 100% + ); + border-radius: 1px; + box-shadow: + 0 0 4px rgba(0, 255, 0, 0.6), + inset 0 0 2px rgba(255, 255, 255, 0.2); + animation: vu-bounce 1.5s ease-in-out infinite; + animation-delay: var(--delay); + height: var(--height); + min-height: 10%; +} + +@keyframes vu-bounce { + 0%, + 100% { + height: var(--height); + filter: brightness(1); + } + 25% { + height: calc(var(--height) * 0.6); + filter: brightness(0.8); + } + 50% { + height: calc(var(--height) * 1.2); + filter: brightness(1.2); + } + 75% { + height: calc(var(--height) * 0.8); + filter: brightness(0.9); + } +} + +/* Peak indicator line */ +.vu-peak-line { + position: absolute; + top: 15%; + left: 4px; + right: 4px; + height: 1px; + background: #f00; + opacity: 0.6; + box-shadow: 0 0 3px #f00; + animation: peak-pulse 2s ease-in-out infinite; +} + +@keyframes peak-pulse { + 0%, + 100% { + opacity: 0.6; + top: 15%; + } + 50% { + opacity: 0.3; + top: 25%; + } +} + +/* LED indicators */ +.vu-leds { + display: flex; + justify-content: center; + gap: 8px; +} + +.vu-led { + width: 5px; + height: 5px; + border-radius: 50%; + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.5); +} + +.vu-led.green { + background: #0f0; + box-shadow: + 0 0 6px #0f0, + inset 0 1px 2px rgba(0, 0, 0, 0.5); + animation: led-blink-green 2s ease-in-out infinite; +} + +.vu-led.yellow { + background: #880; + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.5); + animation: led-blink-yellow 2s ease-in-out infinite; +} + +.vu-led.red { + background: #400; + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.5); + animation: led-blink-red 2s ease-in-out infinite; +} + +@keyframes led-blink-green { + 0%, + 100% { + background: #0f0; + box-shadow: + 0 0 6px #0f0, + inset 0 1px 2px rgba(0, 0, 0, 0.5); + } + 50% { + background: #0a0; + box-shadow: + 0 0 3px #0a0, + inset 0 1px 2px rgba(0, 0, 0, 0.5); + } +} + +@keyframes led-blink-yellow { + 0%, + 40%, + 100% { + background: #880; + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.5); + } + 50%, + 60% { + background: #ff0; + box-shadow: + 0 0 6px #ff0, + inset 0 1px 2px rgba(0, 0, 0, 0.5); + } +} + +@keyframes led-blink-red { + 0%, + 85%, + 100% { + background: #400; + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.5); + } + 90%, + 95% { + background: #f00; + box-shadow: + 0 0 6px #f00, + inset 0 1px 2px rgba(0, 0, 0, 0.5); + } +} diff --git a/assets/sass/style.scss b/assets/sass/style.scss new file mode 100644 index 0000000..36a09fc --- /dev/null +++ b/assets/sass/style.scss @@ -0,0 +1,1762 @@ +@import "partials/global-styles"; + +@import "partials/vu-meter"; +@import "partials/terminal"; +@import "partials/now-playing"; +@import "partials/lavalamp"; + +@import url("https://fonts.googleapis.com/css2?family=Caveat:wght@400;700&display=swap"); + +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + width: 100%; + height: 100vh; + overflow: hidden; + font-family: "Courier New", monospace; + background: #1a1a1a; + position: relative; +} + +@keyframes flicker { + 0% { + opacity: 0.27861; + } + 5% { + opacity: 0.34769; + } + 10% { + opacity: 0.23604; + } + 15% { + opacity: 0.90626; + } + 20% { + opacity: 0.18128; + } + 25% { + opacity: 0.83891; + } + 30% { + opacity: 0.65583; + } + 35% { + opacity: 0.67807; + } + 40% { + opacity: 0.26559; + } + 45% { + opacity: 0.84693; + } + 50% { + opacity: 0.96019; + } + 55% { + opacity: 0.08594; + } + 60% { + opacity: 0.20313; + } + 65% { + opacity: 0.71988; + } + 70% { + opacity: 0.53455; + } + 75% { + opacity: 0.37288; + } + 80% { + opacity: 0.71428; + } + 85% { + opacity: 0.70419; + } + 90% { + opacity: 0.7003; + } + 95% { + opacity: 0.36108; + } + 100% { + opacity: 0.24387; + } +} +@keyframes textShadow { + 0% { + text-shadow: + 0.4389924193300864px 0 1px rgba(0, 30, 255, 0.5), + -0.4389924193300864px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 5% { + text-shadow: + 2.7928974010788217px 0 1px rgba(0, 30, 255, 0.5), + -2.7928974010788217px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 10% { + text-shadow: + 0.02956275843481219px 0 1px rgba(0, 30, 255, 0.5), + -0.02956275843481219px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 15% { + text-shadow: + 0.40218538552878136px 0 1px rgba(0, 30, 255, 0.5), + -0.40218538552878136px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 20% { + text-shadow: + 3.4794037899852017px 0 1px rgba(0, 30, 255, 0.5), + -3.4794037899852017px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 25% { + text-shadow: + 1.6125630401149584px 0 1px rgba(0, 30, 255, 0.5), + -1.6125630401149584px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 30% { + text-shadow: + 0.7015590085143956px 0 1px rgba(0, 30, 255, 0.5), + -0.7015590085143956px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 35% { + text-shadow: + 3.896914047650351px 0 1px rgba(0, 30, 255, 0.5), + -3.896914047650351px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 40% { + text-shadow: + 3.870905614848819px 0 1px rgba(0, 30, 255, 0.5), + -3.870905614848819px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 45% { + text-shadow: + 2.231056963361899px 0 1px rgba(0, 30, 255, 0.5), + -2.231056963361899px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 50% { + text-shadow: + 0.08084290417898504px 0 1px rgba(0, 30, 255, 0.5), + -0.08084290417898504px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 55% { + text-shadow: + 2.3758461067427543px 0 1px rgba(0, 30, 255, 0.5), + -2.3758461067427543px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 60% { + text-shadow: + 2.202193051050636px 0 1px rgba(0, 30, 255, 0.5), + -2.202193051050636px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 65% { + text-shadow: + 2.8638780614874975px 0 1px rgba(0, 30, 255, 0.5), + -2.8638780614874975px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 70% { + text-shadow: + 0.48874025155497314px 0 1px rgba(0, 30, 255, 0.5), + -0.48874025155497314px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 75% { + text-shadow: + 1.8948491305757957px 0 1px rgba(0, 30, 255, 0.5), + -1.8948491305757957px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 80% { + text-shadow: + 0.0833037308038857px 0 1px rgba(0, 30, 255, 0.5), + -0.0833037308038857px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 85% { + text-shadow: + 0.09769827255241735px 0 1px rgba(0, 30, 255, 0.5), + -0.09769827255241735px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 90% { + text-shadow: + 3.443339761481782px 0 1px rgba(0, 30, 255, 0.5), + -3.443339761481782px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 95% { + text-shadow: + 2.1841838852799786px 0 1px rgba(0, 30, 255, 0.5), + -2.1841838852799786px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } + 100% { + text-shadow: + 2.6208764473832513px 0 1px rgba(0, 30, 255, 0.5), + -2.6208764473832513px 0 1px rgba(255, 0, 80, 0.3), + 0 0 3px; + } +} +.crt::after { + content: " "; + display: block; + position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 0; + background: rgba(18, 16, 16, 0.1); + opacity: 0; + z-index: 2; + pointer-events: none; + animation: flicker 0.15s infinite; +} +.crt::before { + content: " "; + display: block; + position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 0; + background: + linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%), + linear-gradient( + 90deg, + rgba(255, 0, 0, 0.06), + rgba(0, 255, 0, 0.02), + rgba(0, 0, 255, 0.06) + ); + z-index: 2; + background-size: + 100% 2px, + 3px 100%; + pointer-events: none; +} +.crt { + animation: textShadow 1.6s infinite; + background: black; + color: greenyellow; + font-family: monospace; +} + +/* Brick wall background */ +.wall { + position: absolute; + width: 100%; + height: 100%; + background: + linear-gradient( + 90deg, + transparent 0%, + transparent 49%, + #0a0a0a 49%, + #0a0a0a 51%, + transparent 51% + ), + linear-gradient( + 0deg, + transparent 0%, + transparent 49%, + #0a0a0a 49%, + #0a0a0a 51%, + transparent 51% + ); + background-size: 120px 60px; + background-position: + 0 0, + 60px 30px; +} + +.wall::before { + content: ""; + position: absolute; + width: 100%; + height: 100%; + background: + repeating-linear-gradient( + 0deg, + #0f0a06 0px, + #1a110a 30px, + #0f0a06 30px, + #0f0a06 60px + ), + /* Dirt and grime texture */ + radial-gradient( + ellipse at 15% 20%, + rgba(20, 15, 10, 0.4) 0%, + transparent 30% + ), + radial-gradient( + ellipse at 85% 40%, + rgba(15, 10, 5, 0.5) 0%, + transparent 25% + ), + radial-gradient( + ellipse at 40% 80%, + rgba(25, 15, 10, 0.3) 0%, + transparent 35% + ), + radial-gradient( + ellipse at 70% 60%, + rgba(10, 8, 5, 0.6) 0%, + transparent 20% + ), + /* Stains and discoloration */ + radial-gradient( + circle at 25% 50%, + rgba(40, 25, 15, 0.2) 0%, + transparent 40% + ), + radial-gradient( + circle at 60% 30%, + rgba(35, 20, 10, 0.3) 0%, + transparent 30% + ), + radial-gradient( + circle at 90% 70%, + rgba(30, 18, 10, 0.25) 0%, + transparent 35% + ); + opacity: 0.95; +} + +.wall::after { + content: ""; + position: absolute; + width: 100%; + height: 100%; + background: + /* More aggressive dark patches */ + radial-gradient(circle at 10% 15%, rgba(10, 5, 0, 0.5) 0%, transparent 25%), + radial-gradient(circle at 30% 70%, rgba(15, 8, 2, 0.4) 0%, transparent 30%), + radial-gradient( + circle at 75% 25%, + rgba(12, 6, 0, 0.45) 0%, + transparent 28% + ), + radial-gradient( + circle at 50% 90%, + rgba(18, 10, 3, 0.35) 0%, + transparent 35% + ), + radial-gradient(circle at 95% 50%, rgba(8, 4, 0, 0.5) 0%, transparent 22%), + /* Noise/texture overlay */ + repeating-linear-gradient( + 45deg, + transparent 0px, + rgba(0, 0, 0, 0.03) 1px, + transparent 2px, + transparent 4px + ); +} + +/* Post-it notes and papers on wall */ +.sticky-note { + font-family: "Caveat", cursive; + position: absolute; + width: 40px; + height: 40px; + background: #ffd966; + box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); + z-index: 2; + font-size: 12px; + padding: 5px; + line-height: 1.2; + text-align: center; +} + +.note1 { + top: 19%; + left: 66%; + transform: rotate(-8deg); +} + +.note2 { + top: 20%; + left: 32%; + transform: rotate(5deg); + background: #ff9999; +} + +.note3 { + top: 12%; + left: 38%; + transform: rotate(-3deg); + background: #99ff99; +} + +.note4 { + top: 43%; + left: 18%; + transform: rotate(12deg); + background: #99ccff; +} + +/* Poster on wall */ +.poster { + position: absolute; + top: 10%; + right: 8%; + width: 200px; + height: 200px; + background: #000; + border: 8px solid #1a1a1a; + box-shadow: inset 0 0 20px rgba(0, 0, 0, 0.5); + transform: rotate(-2deg); + z-index: 1; +} + +.poster-image { + width: 100%; + height: 100%; + background-size: cover; + background-position: center; + background-image: url('data:image/svg+xml,NOW PLAYING'); + overflow: hidden; +} + +/* Now Playing post-it note */ +.now-playing-note, +.now-playing-artist { + position: absolute; + bottom: 145px; + right: 150px; + width: 60px; + height: 60px; + background: #ffd966; + box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); + z-index: 2; + transform: rotate(8deg); + font-size: 14px; + font-family: "Caveat", cursive; + padding: 8px; + line-height: 1.3; + display: flex; + align-items: center; + justify-content: center; + text-align: center; + font-weight: bold; + /* Word wrapping */ + word-wrap: break-word; + overflow-wrap: break-word; + word-break: break-word; + hyphens: auto; + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; +} + +.now-playing-artist { + bottom: -15px; + right: -20px; + transform: rotate(-8deg); +} + +/* X-Files "I want to believe" poster */ +.xfiles-poster { + position: absolute; + top: 15%; + left: 7%; + width: 220px; + height: 300px; + background: #000; + border: 10px solid #2a2a2a; + box-shadow: inset 0 0 30px rgba(0, 0, 0, 0.6); + transform: rotate(1.5deg); + z-index: 1; + overflow: hidden; +} + +.xfiles-content { + width: 100%; + height: 100%; + background: linear-gradient(180deg, #001a33 0%, #000814 100%); + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + padding: 20px; + position: relative; +} + +.ufo-illustration { + width: 140px; + height: 80px; + position: relative; + margin-bottom: 40px; +} + +.ufo-body { + width: 100%; + height: 40px; + background: linear-gradient(180deg, #444 0%, #222 50%, #111 100%); + border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%; + position: relative; + box-shadow: 0 -5px 20px rgba(100, 150, 255, 0.6); +} + +.ufo-dome { + width: 50px; + height: 25px; + background: linear-gradient( + 180deg, + rgba(100, 150, 200, 0.4) 0%, + rgba(50, 100, 150, 0.2) 100% + ); + border-radius: 50% 50% 50% 50% / 100% 100% 0% 0%; + position: absolute; + top: -15px; + left: 50%; + transform: translateX(-50%); +} + +.ufo-lights { + position: absolute; + bottom: -5px; + left: 0; + right: 0; + display: flex; + justify-content: space-around; + padding: 0 20px; +} + +.ufo-light { + width: 8px; + height: 8px; + background: #ffeb3b; + border-radius: 50%; + box-shadow: + 0 0 10px #ffeb3b, + 0 0 20px #ffeb3b; + animation: ufo-blink 2s infinite; +} + +.ufo-light:nth-child(2) { + animation-delay: 0.4s; +} + +.ufo-light:nth-child(3) { + animation-delay: 0.8s; +} + +.ufo-light:nth-child(4) { + animation-delay: 1.2s; +} + +@keyframes ufo-blink { + 0%, + 100% { + opacity: 1; + } + 50% { + opacity: 0.3; + } +} + +.light-beam { + position: absolute; + bottom: -40px; + left: 50%; + transform: translateX(-50%); + width: 60px; + height: 50px; + background: linear-gradient( + 180deg, + rgba(150, 200, 255, 0.4) 0%, + transparent 100% + ); + clip-path: polygon(40% 0%, 60% 0%, 100% 100%, 0% 100%); + animation: beam-pulse 3s ease-in-out infinite; +} + +@keyframes beam-pulse { + 0%, + 100% { + opacity: 0.6; + } + 50% { + opacity: 0.3; + } +} + +.believe-text { + color: #fff; + font-family: "Courier New", monospace; + font-size: 24px; + font-weight: bold; + text-align: center; + letter-spacing: 2px; + text-shadow: 0 0 10px rgba(255, 255, 255, 0.5); + margin-top: 20px; +} + +/* CRT Monitor container */ +.crt-container { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + z-index: 10; +} + +/* CRT Monitor bezel */ +.crt-monitor { + width: 650px; + height: 500px; + background: linear-gradient(145deg, #e8e0c8, #c4b89a); + border-radius: 12px; + padding: 25px 30px 45px 30px; + box-shadow: + 0 30px 60px rgba(0, 0, 0, 0.8), + inset 0 2px 4px rgba(255, 255, 255, 0.3), + inset 0 -2px 4px rgba(0, 0, 0, 0.3); + position: relative; +} + +/* Brand logo on bezel */ +.crt-monitor::before { + content: "ARASAKA"; + position: absolute; + bottom: 15px; + left: 50%; + transform: translateX(-50%); + color: #666; + font-size: 11px; + font-weight: bold; + letter-spacing: 2px; +} + +/* Power indicator LED */ +.crt-monitor::after { + content: ""; + position: absolute; + bottom: 15px; + right: 40px; + width: 8px; + height: 8px; + background: #0f0; + border-radius: 50%; + box-shadow: + 0 0 10px #0f0, + 0 0 20px #0f0; + animation: pulse 2s ease-in-out infinite; +} + +@keyframes pulse { + 0%, + 100% { + opacity: 1; + box-shadow: + 0 0 10px #0f0, + 0 0 20px #0f0; + } + 50% { + opacity: 0.5; + box-shadow: + 0 0 5px #0f0, + 0 0 10px #0f0; + } +} + +/* 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; + height: 50px; + background: linear-gradient(90deg, #b8ac90, #a89978); + margin: 0 auto; + border-radius: 5px; + box-shadow: + inset -2px 0 5px rgba(0, 0, 0, 0.3), + 2px 0 5px rgba(0, 0, 0, 0.2); +} + +/* Stand base */ +.stand-base { + width: 120px; + height: 30px; + background: linear-gradient(180deg, #a89978, #8a7d62); + border-radius: 50% 50% 5px 5px; + box-shadow: + 0 5px 15px rgba(0, 0, 0, 0.4), + inset 0 2px 3px rgba(255, 255, 255, 0.2); + position: relative; + top: 0; +} + +.stand-base::before { + content: ""; + position: absolute; + bottom: 5px; + left: 50%; + transform: translateX(-50%); + width: 80px; + height: 2px; + background: rgba(0, 0, 0, 0.3); + border-radius: 50%; +} + +/* CRT Screen */ +.crt-screen { + width: 100%; + height: 100%; + background: #000; + border-radius: 8px; + position: relative; + overflow: hidden; + box-shadow: + inset 0 0 80px rgba(0, 255, 100, 0.1), + inset 0 0 40px rgba(0, 255, 100, 0.05), + inset 3px 3px 8px rgba(255, 255, 255, 0.1), + inset -3px -3px 8px rgba(0, 0, 0, 0.5); +} + +/* Screen curvature/glass emboss effect */ +.crt-screen::before { + content: ""; + position: absolute; + top: -5%; + left: -5%; + right: -5%; + bottom: -5%; + background: + radial-gradient( + ellipse at 30% 30%, + rgba(255, 255, 255, 0.15) 0%, + transparent 40% + ), + radial-gradient(ellipse at center, transparent 0%, rgba(0, 0, 0, 0.3) 100%); + pointer-events: none; + z-index: 3; + border-radius: 8px; +} + +/* Scanlines */ +.crt-screen::after { + content: ""; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: repeating-linear-gradient( + 0deg, + rgba(0, 0, 0, 0.15) 0px, + rgba(0, 0, 0, 0.15) 1px, + transparent 1px, + transparent 2px + ); + pointer-events: none; + z-index: 2; + animation: scanline 8s linear infinite; +} + +@keyframes scanline { + 0% { + transform: translateY(0); + } + 100% { + transform: translateY(10px); + } +} + +/* Screen flicker */ +.crt-flicker { + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: rgba(0, 255, 100, 0.02); + animation: flicker 0.15s infinite; + pointer-events: none; + z-index: 4; +} + +@keyframes flicker { + 0% { + opacity: 0.98; + } + 50% { + opacity: 1; + } + 100% { + opacity: 0.97; + } +} + +/* Content area */ +.content { + position: relative; + width: 100%; + height: 100%; + padding: 3px; + color: #0f0; + z-index: 1; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + text-shadow: 0 0 10px rgba(0, 255, 0, 0.8); +} + +.content h1 { + font-size: 2.5rem; + margin-bottom: 1rem; + animation: textGlow 1.5s ease-in-out infinite alternate; +} + +.content p { + font-size: 1.2rem; + margin-bottom: 0.5rem; + line-height: 1.6; + max-width: 500px; + text-align: center; +} + +@keyframes textGlow { + from { + text-shadow: 0 0 10px rgba(0, 255, 0, 0.8); + } + to { + text-shadow: + 0 0 20px rgba(0, 255, 0, 1), + 0 0 30px rgba(0, 255, 0, 0.6); + } +} + +/* Desk */ +.desk { + position: absolute; + bottom: 0; + left: 0; + right: 0; + height: 25%; + background: + /* Wear and tear patterns */ + radial-gradient( + ellipse at 30% 40%, + rgba(20, 15, 10, 0.3) 0%, + transparent 30% + ), + radial-gradient( + ellipse at 70% 60%, + rgba(15, 10, 5, 0.4) 0%, + transparent 25% + ), + radial-gradient( + ellipse at 50% 20%, + rgba(25, 18, 10, 0.2) 0%, + transparent 40% + ), + /* Coffee stains */ + radial-gradient( + circle at 20% 50%, + rgba(40, 25, 10, 0.6) 0%, + rgba(30, 20, 8, 0.3) 5%, + transparent 8% + ), + radial-gradient( + circle at 65% 30%, + rgba(35, 22, 8, 0.5) 0%, + rgba(25, 15, 5, 0.2) 4%, + transparent 7% + ), + /* Scratches and marks */ + linear-gradient( + 92deg, + transparent 45%, + rgba(50, 40, 30, 0.1) 49%, + transparent 51% + ), + linear-gradient( + 88deg, + transparent 60%, + rgba(40, 30, 20, 0.15) 62%, + transparent 64% + ), + linear-gradient( + 94deg, + transparent 25%, + rgba(45, 35, 25, 0.12) 27%, + transparent 29% + ), + /* Base wood color */ linear-gradient(180deg, #2d1f12 0%, #1d1208 100%); + box-shadow: 0 -10px 30px rgba(0, 0, 0, 0.5); + z-index: 5; +} + +.desk::before { + content: ""; + position: absolute; + top: 0; + left: 0; + right: 0; + height: 4px; + background: linear-gradient(90deg, #1d1208, #0d0804, #1d1208); +} + +.desk::after { + content: ""; + position: absolute; + width: 100%; + height: 100%; + background: + /* Dust and grime texture */ repeating-linear-gradient( + 60deg, + transparent 0px, + rgba(0, 0, 0, 0.02) 1px, + transparent 2px, + transparent 5px + ); + pointer-events: none; +} + +/* Cables on desk - now using SVG for curves */ +.desk-cables { + position: absolute; + bottom: 0; + left: 0; + width: 100%; + height: 100%; + pointer-events: none; + z-index: 7; +} + +/* Better curved cables using SVG paths */ +.cable-svg { + position: absolute; + bottom: 20%; + z-index: 4; + pointer-events: none; +} + +.cable-svg svg { + filter: drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.5)); +} + +/* Secondary monitors on desk */ +/* Secondary CRT monitors - positioned relative to main monitor */ +.secondary-screen { + position: absolute; + border-radius: 8px; + z-index: 6; + padding: 8px 10px 20px 10px; +} + +/* Wall-mounted CRT 1 - upper left relative to main */ +.wall-monitor-1 { + top: 3%; + left: -34%; + width: 200px; + height: 200px; + background: linear-gradient(145deg, #c8c8c0, #a8a898); + box-shadow: + 0 8px 20px rgba(0, 0, 0, 0.7), + inset 0 2px 4px rgba(255, 255, 255, 0.3), + inset 0 -2px 4px rgba(0, 0, 0, 0.3); + padding: 5px 7px 15px 7px; +} + +.wall-monitor-1::after { + content: ""; + position: absolute; + bottom: 4px; + right: 7px; + width: 4px; + height: 4px; + background: #0f0; + border-radius: 50%; + box-shadow: 0 0 6px #0f0; + animation: pulse 2s ease-in-out infinite; +} + +/* Wall-mounted CRT 2 - upper right, larger, closely stacked */ +.wall-monitor-2 { + top: 4%; + right: -50%; + width: 300px; + height: 245px; + background: linear-gradient(145deg, #b8b8b0, #989888); + box-shadow: + 0 8px 20px rgba(0, 0, 0, 0.7), + inset 0 2px 4px rgba(255, 255, 255, 0.3), + inset 0 -2px 4px rgba(0, 0, 0, 0.3); + padding: 6px 8px 18px 8px; + transform: rotate(-1deg); +} + +.wall-monitor-2::after { + content: ""; + position: absolute; + bottom: 5px; + right: 8px; + width: 5px; + height: 5px; + background: #0ff; + border-radius: 50%; + box-shadow: 0 0 6px #0ff; + animation: pulse 1.8s ease-in-out infinite; +} + +/* Wall-mounted CRT 3 - lower right, larger, closely aligned to monitor 2 */ +.wall-monitor-3 { + top: 57%; + right: -33%; + width: 195px; + height: 140px; + background: linear-gradient(145deg, #d8d0b8, #b8b098); + box-shadow: + 0 8px 20px rgba(0, 0, 0, 0.7), + inset 0 2px 4px rgba(255, 255, 255, 0.3), + inset 0 -2px 4px rgba(0, 0, 0, 0.3); + padding: 6px 8px 18px 8px; + transform: rotate(1deg); +} + +.wall-monitor-3::after { + content: ""; + position: absolute; + bottom: 5px; + right: 8px; + width: 5px; + height: 5px; + background: #f00; + border-radius: 50%; + box-shadow: 0 0 6px #f00; + animation: pulse 2.3s ease-in-out infinite; +} + +/* Wall-mounted CRT 4 - lower left relative to main */ +.wall-monitor-4 { + top: 50%; + left: -53%; + width: 300px; + height: 225px; + background: linear-gradient(145deg, #a8a898, #888878); + box-shadow: + 0 8px 20px rgba(0, 0, 0, 0.7), + inset 0 2px 4px rgba(255, 255, 255, 0.3), + inset 0 -2px 4px rgba(0, 0, 0, 0.3); + padding: 5px 7px 15px 7px; + transform: rotate(-1deg); +} + +.wall-monitor-4::after { + content: ""; + position: absolute; + bottom: 4px; + right: 7px; + width: 4px; + height: 4px; + background: #fa0; + border-radius: 50%; + box-shadow: 0 0 6px #fa0; + animation: pulse 2.1s ease-in-out infinite; +} + +/* Desk-mounted CRT - on desk left side */ +.desk-monitor { + bottom: 10%; + left: 6%; + width: 200px; + height: 145px; + background: linear-gradient(145deg, #d8d0b8, #b8b098); + box-shadow: + 0 8px 20px rgba(0, 0, 0, 0.7), + inset 0 2px 4px rgba(255, 255, 255, 0.3), + inset 0 -2px 4px rgba(0, 0, 0, 0.3); +} + +.desk-monitor::after { + content: ""; + position: absolute; + bottom: 6px; + right: 10px; + width: 5px; + height: 5px; + background: #0f0; + border-radius: 50%; + box-shadow: 0 0 8px #0f0; + animation: pulse 2.5s ease-in-out infinite; +} + +/* Equipment stacks */ +.equipment-stack { + position: absolute; + z-index: 2; +} + +/* LED indicators on equipment */ +.led-indicator { + position: absolute; + width: 3px; + height: 3px; + border-radius: 50%; + box-shadow: 0 0 4px currentColor; +} + +.led-green { + background: #0f0; + color: #0f0; + top: 50%; + right: 5px; + animation: pulse 1.5s ease-in-out infinite; +} + +.led-red { + background: #f00; + color: #f00; + top: 50%; + right: 12px; + animation: pulse 2s ease-in-out infinite; +} + +/* Small equipment on desk */ +.desk-equipment { + position: absolute; + bottom: 10%; + background: linear-gradient(145deg, #4a4a4a 0%, #2a2a2a 100%); + box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.6); + z-index: 8; +} + +.modem { + right: 25%; + width: 35px; + height: 12px; +} + +.modem::after { + content: ""; + position: absolute; + top: 50%; + right: 5px; + transform: translateY(-50%); + width: 2px; + height: 2px; + background: #0f0; + border-radius: 50%; + box-shadow: 0 0 4px #0f0; + animation: pulse 1s ease-in-out infinite; +} + +.power-strip { + left: 35%; + width: 50px; + height: 8px; + background: linear-gradient(145deg, #1a1a1a 0%, #0a0a0a 100%); +} + +.power-strip::before { + content: ""; + position: absolute; + top: 50%; + left: 10px; + transform: translateY(-50%); + width: 3px; + height: 3px; + background: #f00; + border-radius: 50%; + box-shadow: 0 0 4px #f00; +} +.monitor-stand-small { + position: absolute; + bottom: -20px; + left: 50%; + transform: translateX(-50%); + width: 60%; + height: 20px; + background: linear-gradient(180deg, #a8a898 0%, #888878 100%); + z-index: 4; + border-radius: 0 0 8px 8px; + box-shadow: + 0 5px 15px rgba(0, 0, 0, 0.6), + inset 0 1px 2px rgba(255, 255, 255, 0.2); +} + +.monitor-stand-small::before { + content: ""; + position: absolute; + bottom: -8px; + left: 50%; + transform: translateX(-50%); + width: 90%; + height: 8px; + background: linear-gradient(90deg, transparent, #666, transparent); + border-radius: 50%; + opacity: 0.6; +} + +.screen-display { + width: 100%; + height: 100%; + background: #000; + padding: 8px; + font-family: monospace; + font-size: 10px; + color: #0f0; + overflow: hidden; + line-height: 1.3; + border-radius: 6px; + box-shadow: + inset 0 0 40px rgba(0, 255, 100, 0.08), + inset 0 0 20px rgba(0, 255, 100, 0.05), + inset 2px 2px 6px rgba(255, 255, 255, 0.08), + inset -2px -2px 6px rgba(0, 0, 0, 0.4); + position: relative; +} + +.screen-display::after { + content: ""; + position: absolute; + top: -3%; + left: -3%; + right: -3%; + bottom: -3%; + background: + radial-gradient( + ellipse at 25% 25%, + rgba(255, 255, 255, 0.12) 0%, + transparent 35% + ), + radial-gradient(ellipse at center, transparent 0%, rgba(0, 0, 0, 0.25) 100%); + pointer-events: none; + z-index: 2; + border-radius: 6px; +} + +.screen-display::before { + content: ""; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: repeating-linear-gradient( + 0deg, + rgba(0, 0, 0, 0.15) 0px, + rgba(0, 0, 0, 0.15) 1px, + transparent 1px, + transparent 2px + ); + pointer-events: none; + z-index: 1; +} + +.screen-display.large { + font-size: 10px; + padding: 10px; +} + +.screen-display.tiny { + font-size: 7px; + padding: 5px; + line-height: 1.2; +} + +.screen-display.amber { + color: #ff9900; + background: #0a0600; +} + +.screen-display.amber::after { + background: + radial-gradient( + ellipse at 25% 25%, + rgba(255, 200, 100, 0.12) 0%, + transparent 35% + ), + radial-gradient(ellipse at center, transparent 0%, rgba(0, 0, 0, 0.25) 100%); +} + +.screen-display.cyan { + color: #00ffff; + background: #001a1a; +} + +.screen-display.cyan::after { + background: + radial-gradient( + ellipse at 25% 25%, + rgba(100, 255, 255, 0.12) 0%, + transparent 35% + ), + radial-gradient(ellipse at center, transparent 0%, rgba(0, 0, 0, 0.25) 100%); +} + +/* Scrolling text animation */ +.scroll-text { + animation: scroll-up 5s linear infinite; + display: block; +} + +@keyframes scroll-up { + 0% { + transform: translateY(0px); + } + 100% { + transform: translateY(-200px); + } +} + +/* Blinking cursor effect on screens */ +.cursor-blink { + animation: cursor 1s infinite; +} + +@keyframes cursor { + 0%, + 100% { + opacity: 1; + } + 50% { + opacity: 0; + } +} + +/* Widgets and gadgets */ +.widget { + position: absolute; + bottom: 8%; + border-radius: 2px; + z-index: 6; +} + +.router { + left: 25%; + width: 170px; + height: 50px; + background: linear-gradient(180deg, #2a2a2a 0%, #1a1a1a 100%); + border: 1px solid #333; + box-shadow: + 0 2px 8px rgba(0, 0, 0, 0.5), + inset 0 1px 2px rgba(255, 255, 255, 0.1); +} + +.router::before { + content: ""; + position: absolute; + top: 50%; + left: 10px; + transform: translateY(-50%); + width: 4px; + height: 4px; + background: #0f0; + border-radius: 50%; + box-shadow: 0 0 5px #0f0; + animation: blink-fast 1s infinite; +} + +.router::after { + content: ""; + position: absolute; + top: 50%; + left: 20px; + transform: translateY(-50%); + width: 4px; + height: 4px; + background: #ff0; + border-radius: 50%; + box-shadow: 0 0 5px #ff0; + animation: blink-fast 1.5s infinite; +} + +@keyframes blink-fast { + 0%, + 100% { + opacity: 1; + } + 50% { + opacity: 0.2; + } +} + +.hard-drive { + left: 30%; + bottom: 20%; + width: 55px; + height: 35px; + background: linear-gradient(180deg, #3a3a3a 0%, #2a2a2a 100%); + border: 1px solid #444; + box-shadow: + 0 2px 8px rgba(0, 0, 0, 0.5), + inset 0 1px 2px rgba(255, 255, 255, 0.1); +} + +.hard-drive::before { + content: ""; + position: absolute; + top: 8px; + right: 8px; + width: 3px; + height: 3px; + background: #f00; + border-radius: 50%; + box-shadow: 0 0 5px #f00; + animation: pulse-slow 2s infinite; +} + +@keyframes pulse-slow { + 0%, + 100% { + opacity: 1; + } + 50% { + opacity: 0.3; + } +} + +/* Desk clutter */ +.desk-item { + position: absolute; + z-index: 8; +} + +/* Keyboard */ +.keyboard { + bottom: 9%; + left: 42%; + width: 170px; + height: 55px; + background: linear-gradient(180deg, #3a3a3a 0%, #2a2a2a 100%); + border-radius: 3px; + box-shadow: + 0 3px 10px rgba(0, 0, 0, 0.6), + inset 0 1px 2px rgba(255, 255, 255, 0.1); +} + +.keyboard::before { + content: ""; + position: absolute; + top: 8px; + left: 10px; + right: 10px; + bottom: 8px; + background: + repeating-linear-gradient( + 0deg, + #1a1a1a 0px, + #1a1a1a 6px, + transparent 6px, + transparent 8px + ), + repeating-linear-gradient( + 90deg, + #1a1a1a 0px, + #1a1a1a 8px, + transparent 8px, + transparent 10px + ); +} + +/* Mouse */ +.mouse { + bottom: 8.5%; + right: 45%; + width: 25px; + height: 35px; + background: linear-gradient(145deg, #2a2a2a, #1a1a1a); + border-radius: 12px 12px 8px 8px; + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.6); +} + +.mouse::before { + content: ""; + position: absolute; + top: 5px; + left: 50%; + transform: translateX(-50%); + width: 2px; + height: 12px; + background: #111; + border-radius: 1px; +} + +/* Coffee mug */ +.coffee-mug { + bottom: 12%; + left: 75%; + width: 55px; + height: 62px; + background: linear-gradient(180deg, #4a2a1a 0%, #3a1a0a 100%); + border-radius: 15px; + box-shadow: 0 3px 10px rgba(0, 0, 0, 0.6); +} + +.coffee-mug::before { + content: ""; + position: absolute; + top: 24%; + right: -33%; + width: 28%; + height: 42%; + border: 3px solid #3a1a0a; + border-left: none; + border-radius: 0 12px 12px 0; +} + +.coffee-mug::after { + content: ""; + position: absolute; + top: 8%; + left: 9%; + right: 9%; + height: 23%; + background: radial-gradient(ellipse, #2a1a0a 0%, #1a0a00 100%); + border-radius: 50%; +} + +/* iPod group container - maintains relative positioning */ +.ipod-group { + position: absolute; + bottom: 6%; + right: 34%; + width: 150px; + height: 100px; + z-index: 15; +} + +/* iPod 5th Generation */ +.ipod { + position: absolute; + top: 0; + left: 52px; + width: 45px; + height: 70px; + background: linear-gradient(145deg, #f0f0f0, #d0d0d0); + border-radius: 8px; + box-shadow: + 0 3px 10px rgba(0, 0, 0, 0.6), + inset 0 1px 3px rgba(255, 255, 255, 0.5), + inset 0 -1px 3px rgba(0, 0, 0, 0.2); + transform: rotate(-8deg); + z-index: 2; +} + +.ipod::before { + content: ""; + position: absolute; + top: 8px; + left: 50%; + transform: translateX(-50%); + width: 32px; + height: 22px; + background: linear-gradient(180deg, #1a1a2a 0%, #0a0a1a 100%); + border-radius: 2px; + box-shadow: inset 0 0 5px rgba(0, 100, 150, 0.3); +} + +.ipod-wheel { + position: absolute; + bottom: 8px; + left: 50%; + transform: translateX(-50%); + width: 32px; + height: 30px; + background: radial-gradient( + circle at center, + #fff 0%, + #fff 35%, + #ddd 35%, + #ccc 100% + ); + border-radius: 50%; + box-shadow: + inset 0 1px 2px rgba(0, 0, 0, 0.2), + 0 1px 3px rgba(0, 0, 0, 0.3); +} + +.ipod-wheel::before { + content: ""; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + width: 12px; + height: 12px; + background: #e8e8e8; + border-radius: 50%; + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.2); +} + +/* Earbuds/IEMs - redesigned to look like in-ear monitors */ +.earbud { + position: absolute; + width: 10px; + height: 12px; + background: linear-gradient(135deg, #2a2a3a 0%, #1a1a2a 50%, #0a0a1a 100%); + border-radius: 40% 60% 60% 40% / 50% 50% 50% 50%; + box-shadow: + 0 2px 4px rgba(0, 0, 0, 0.6), + inset 1px 1px 2px rgba(255, 255, 255, 0.1); + z-index: 3; +} + +/* IEM tips */ +.earbud::after { + content: ""; + position: absolute; + width: 6px; + height: 6px; + background: radial-gradient( + circle, + rgba(200, 200, 200, 0.3), + rgba(100, 100, 100, 0.2) + ); + border-radius: 50%; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); +} + +/* IEM nozzle/sound bore */ +.earbud::before { + content: ""; + position: absolute; + width: 3px; + height: 5px; + background: linear-gradient(180deg, #444 0%, #222 100%); + border-radius: 2px; + top: 3px; + left: 50%; + transform: translateX(-50%); +} + +.earbud-left { + top: 85px; + left: 0px; + transform: rotate(-25deg); +} + +.earbud-right { + top: 80px; + left: 120px; + transform: rotate(35deg); +} + +/* Cable SVG positioned in container */ +.ipod-cables { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + pointer-events: none; + z-index: 1; +} + +/* Purple-blue gradient for cable */ +.ipod-cables defs stop.cable-start { + stop-color: #6b4fb3; +} + +.ipod-cables defs stop.cable-end { + stop-color: #4169e1; +} +/* Import a nice cursive font */ +@import url("https://fonts.googleapis.com/css2?family=Neonderthaw&display=swap"); + +/* Neon sign styling */ +.neon-sign { + position: absolute; + top: 5%; + left: 60%; + transform: translateX(-50%) rotate(-10deg); + z-index: 1; +} + +.neon-text { + font-family: "Neonderthaw", cursive; + font-size: 7rem; + color: #fff; + text-shadow: + /* White core */ + 0 0 5px #fff, + 0 0 5px #fff, + /* Bright green inner glow */ 0 0 21px #0f0, + 0 0 42px #0f0, + 0 0 82px #0f0, + /* Outer green glow */ 0 0 92px #0f0, + 0 0 142px #0f0, + 0 0 181px #0f0; + animation: + neon-flicker 10s infinite alternate, + neon-pulse 3s ease-in-out infinite; +} + +@keyframes neon-pulse { + 0%, + 100% { + text-shadow: + 0 0 7px #fff, + 0 0 10px #fff, + 0 0 21px #0f0, + 0 0 42px #0f0, + 0 0 82px #0f0, + 0 0 92px #0f0, + 0 0 102px #0f0, + 0 0 151px #0f0; + } + 50% { + text-shadow: + 0 0 4px #fff, + 0 0 7px #fff, + 0 0 15px #0f0, + 0 0 30px #0f0, + 0 0 60px #0f0, + 0 0 70px #0f0, + 0 0 80px #0f0, + 0 0 120px #0f0; + } +} + +@keyframes neon-flicker { + 0%, + 19%, + 21%, + 23%, + 25%, + 54%, + 56%, + 100% { + opacity: 1; + } + 20%, + 24%, + 55% { + opacity: 0.4; + } + 22% { + opacity: 0.6; + } +} diff --git a/config.yml b/config.yml index 8843237..d49589d 100644 --- a/config.yml +++ b/config.yml @@ -1,63 +1,31 @@ baseURL: "https://ritual.sh/" title: ritual.sh -paginate: 5 -theme: PaperMod - +theme: "hugo-starter" enableRobotsTXT: true buildDrafts: false buildFuture: false buildExpired: false - -googleAnalytics: UA-123-45 - enableEmoji: true +# Fixed: Changed from 'paginate: 5' to pagination block +pagination: + pagerSize: 5 + minify: disableXML: true minifyOutput: true params: - env: production # to enable google analytics, opengraph, twitter-cards and schema. - title: ritual - description: "Personal website of Dan Baker - Software Engineer" - keywords: [Blog] - author: Me - # author: ["Me", "You"] # multiple authors - images: [""] - DateFormat: "January 2, 2006" - defaultTheme: dark # dark, light - disableThemeToggle: false - - ShowReadingTime: true - ShowShareButtons: false - ShowPostNavLinks: true - ShowBreadCrumbs: false - ShowCodeCopyButtons: false - ShowWordCount: true - ShowRssButtonInSectionTermList: true - UseHugoToc: true - disableSpecial1stPost: false - disableScrollToTop: false - comments: true - hidemeta: false - hideSummary: false - hideAuthor: true - showtoc: false - tocopen: false - - mainSections: - - posts - - gear - + env: production + label: text: "ritual" icon: /images/android-chrome-512x512.png iconImageHeight: 35 iconHeight: 70 - - # profile-mode + profileMode: - enabled: false # needs to be explicitly set + enabled: false title: ExampleSite subtitle: "This is subtitle" imageUrl: "" @@ -69,12 +37,7 @@ params: url: posts - name: Tags url: tags - - # home-info mode - homeInfoParams: - Title: "I’m Dan. I live in the Golden Valley, Herefordshire. I work remotely as a software engineer, team leader, and system architect. " - Content: "I like to talk about engineering, networking, and system design. There’s a higher change I will also talk about many of my other interests – photography, digital minimalism, lego, gaming and game dev, coffee, or the great outdoors." - + socialIcons: - name: instagram url: "https://www.instagram.com/ritualphotos" @@ -85,26 +48,12 @@ params: - name: lastfm url: "https://www.last.fm/user/ritualplays" - analytics: - google: - SiteVerificationTag: "XYZabc" - bing: - SiteVerificationTag: "XYZabc" - yandex: - SiteVerificationTag: "XYZabc" - + cover: - hidden: false # hide everywhere but not in structured data - hiddenInList: true # hide on list pages and home - hiddenInSingle: false # hide on single page - - editPost: - URL: "https://github.com//content" - Text: "Suggest Changes" # edit text - appendFilePath: true # to append file path to Edit link - - # for search - # https://fusejs.io/api/options.html + hidden: false + hiddenInList: true + hiddenInSingle: false + fuseOpts: isCaseSensitive: false shouldSort: true @@ -112,8 +61,9 @@ params: distance: 1000 threshold: 0.4 minMatchCharLength: 0 - limit: 10 # refer: https://www.fusejs.io/api/methods.html#search + limit: 10 keys: ["title", "permalink", "summary", "content"] + menu: main: - identifier: about @@ -132,17 +82,19 @@ menu: name: tags url: /tags/ weight: 20 -# Read: https://github.com/adityatelange/hugo-PaperMod/wiki/FAQs#using-hugos-syntax-highlighter-chroma + pygmentsUseClasses: true + markup: highlight: noClasses: false - # anchorLineNos: true - # codeFences: true - # guessSyntax: true - # lineNos: true - # style: monokai + # Fixed: Added goldmark renderer to allow raw HTML + goldmark: + renderer: + unsafe: true module: imports: - - path: github.com/hugo-mods/lazyimg + - path: github.com/hugo-mods/lazyimg + + \ No newline at end of file diff --git a/content/posts/2024-01-30-.md b/content/posts/2024-01-30-.md deleted file mode 100644 index a354866..0000000 --- a/content/posts/2024-01-30-.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -title: Finding the right dumb phone for me -author: Dan -type: post -date: -001-11-30T00:00:00+00:00 -draft: true -url: /?p=178 -categories: - - Digital Minimalism - ---- diff --git a/content/posts/2024-02-07-.md b/content/posts/2024-02-07-.md deleted file mode 100644 index d299389..0000000 --- a/content/posts/2024-02-07-.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -title: Going back to an MP3 player in 2024 -author: Dan -type: post -date: -001-11-30T00:00:00+00:00 -draft: true -url: /?p=190 -categories: - - Uncategorised - ---- diff --git a/content/posts/2024-02-08-.md b/content/posts/2024-02-08-.md deleted file mode 100644 index 2cd45a8..0000000 --- a/content/posts/2024-02-08-.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: My Every Day Carry (EDC) – Early 2024 Edition -author: Dan -type: post -date: -001-11-30T00:00:00+00:00 -draft: true -url: /?p=192 -categories: - - Digital Minimalism - - Life -tags: - - edc - - every day carry - - tech - ---- diff --git a/layouts/_default/list.html b/layouts/_default/list.html deleted file mode 100644 index 81aea6e..0000000 --- a/layouts/_default/list.html +++ /dev/null @@ -1,121 +0,0 @@ -{{- define "main" }} - -{{- if (and site.Params.profileMode.enabled .IsHome) }} -{{- partial "index_profile.html" . }} -{{- else }} {{/* if not profileMode */}} - -{{- if not .IsHome | and .Title }} - -{{- end }} - -{{- if .Content }} -
- {{- if not (.Param "disableAnchoredHeadings") }} - {{- partial "anchored_headings.html" .Content -}} - {{- else }}{{ .Content }}{{ end }} -
-{{- end }} - -{{- $pages := union .RegularPages .Sections }} - -{{- if .IsHome }} -{{- $pages = where site.RegularPages "Type" "in" site.Params.mainSections }} -{{- $pages = where $pages "Params.hiddenInHomeList" "!=" "true" }} -{{- end }} - -{{- $paginator := .Paginate $pages }} - -{{- if and .IsHome site.Params.homeInfoParams (eq $paginator.PageNumber 1) }} -{{- partial "home_info.html" . }} -{{- end }} - -{{- $term := .Data.Term }} -{{- range $index, $page := $paginator.Pages }} - -{{- $class := "post-entry" }} - -{{- $user_preferred := or site.Params.disableSpecial1stPost site.Params.homeInfoParams }} -{{- if (and $.IsHome (eq $paginator.PageNumber 1) (eq $index 0) (not $user_preferred)) }} -{{- $class = "first-entry" }} -{{- else if $term }} -{{- $class = "post-entry tag-entry" }} -{{- end }} - -
- {{- $isHidden := (.Param "cover.hiddenInList") | default (.Param "cover.hidden") | default false }} - {{- partial "cover.html" (dict "cxt" . "IsSingle" false "isHidden" $isHidden) }} -
-

- {{- .Title }} - {{- if .Draft }} - - - - - - {{- end }} -

-
- {{- if (ne (.Param "hideSummary") true) }} -
-

{{ .Summary | plainify | htmlUnescape }}{{ if .Truncated }}...{{ end }}

-
- {{- end }} - {{- if not (.Param "hideMeta") }} -
- {{- partial "post_meta.html" . -}} -
- {{- end }} - -
-{{- end }} - -{{- if gt $paginator.TotalPages 1 }} - -{{- end }} - -{{- end }}{{/* end profileMode */}} - -{{- end }}{{- /* end main */ -}} diff --git a/layouts/_default/single.html b/layouts/_default/single.html deleted file mode 100644 index 92be762..0000000 --- a/layouts/_default/single.html +++ /dev/null @@ -1,69 +0,0 @@ -{{- define "main" }} - -
-
- {{ partial "breadcrumbs.html" . }} -

- {{ .Title }} - {{- if .Draft }} - - - - - - {{- end }} -

- {{- if .Description }} -
- {{ .Description }} -
- {{- end }} - {{- if not (.Param "hideMeta") }} - - {{- end }} -
- {{- $isHidden := (.Param "cover.hiddenInSingle") | default (.Param "cover.hidden") | default false }} - {{- partial "cover.html" (dict "cxt" . "IsSingle" true "isHidden" $isHidden) }} - {{- if (.Param "ShowToc") }} - {{- partial "toc.html" . }} - {{- end }} - - {{- if .Content }} -
- {{- if not (.Param "disableAnchoredHeadings") }} - {{- partial "anchored_headings.html" .Content -}} - {{- else }}{{ .Content }}{{ end }} -
- {{- end }} - -
- {{- $tags := .Language.Params.Taxonomies.tag | default "tags" }} - - - {{- if ne .Params.disableCoffee true }} - {{- partial "buy_me_a_coffee.html" . -}} - {{- end }} - - {{- if (.Param "ShowPostNavLinks") }} - {{- partial "post_nav_links.html" . }} - {{- end }} - {{- if (and site.Params.ShowShareButtons (ne .Params.disableShare true)) }} - {{- partial "share_icons.html" . -}} - {{- end }} - -
- - {{- if (.Param "comments") }} - {{- partial "comments.html" . }} - {{- end }} -
- -{{- end }}{{/* end main */}} diff --git a/layouts/index.html b/layouts/index.html new file mode 100644 index 0000000..c9e09f5 --- /dev/null +++ b/layouts/index.html @@ -0,0 +1,401 @@ +{{ define "main" }} +
+ + +
+
ritual.sh
+
+ + +
fix bugs
+
pwd:
puppies
+
finish
coffee
+
CALL
WIFE
+ + +
+
+ + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
I WANT TO
BELIEVE
+
+
+ + +
+
+ + +
+
+ +
+
+
+
Recently Played
+
+
+ + + +
+
+
+ + + + +
+ + + + + + + + + + + + + + + + + + +
+ + +
+
+ SYSTEM LOAD
+ CPU: 67%
+ RAM: 4.2/8GB
+ NET: 2.4MB/s
+ DISK: 89%
+ _ +
+
+
+ + +
+
+
+ + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
+ +
+
+
+
+
+
+
+
+ + +
+
+
+
+ + + + + + + + + + + + + + + + + + +
+
+
+ + +
+
+ +{{ partial "lavalamp.html" . }} + + +
+
+
+
+
+
+ +
+
+
+
+
+
+
+
+ + +
+
+ > netstat -an
+
+tcp   0   0 127.0.0.1:33842      0.0.0.0:*            LISTEN     
+tcp   0   0 127.0.0.1:41267      0.0.0.0:*            LISTEN     
+tcp   0   0 127.0.0.54:53        0.0.0.0:*            LISTEN     
+tcp   0   0 127.0.0.1:52918      127.0.0.1:38471      ESTABLISHED
+tcp   0   0 192.168.1.147:44321  52.143.67.201:443    ESTABLISHED
+tcp   0   0 192.168.1.147:39854  104.26.15.88:80      TIME_WAIT  
+tcp   0   0 127.0.0.1:38471      127.0.0.1:52918      ESTABLISHED
+tcp   0   0 127.0.0.1:56732      127.0.0.1:8080       ESTABLISHED
+tcp   0   0 192.168.1.147:41209  13.107.42.16:443     ESTABLISHED
+tcp   0   0 127.0.0.1:49563      127.0.0.1:8080       TIME_WAIT
+
+Proto RefCnt Flags  Type    State      I-Node Path
+unix  3      [ ]    STREAM  CONNECTED  50896  /run/user/1000/bus
+
+
+
+ +
+
+
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 172.16.0.1:22
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 172.16.0.1:22
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 172.16.0.1:22
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 172.16.0.1:22
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 172.16.0.1:22
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 172.16.0.1:22
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 172.16.0.1:22
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 172.16.0.1:22
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 172.16.0.1:22
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 172.16.0.1:22
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 172.16.0.1:22
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 172.16.0.1:22
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 172.16.0.1:22
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 172.16.0.1:22
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+ [PKT] 172.16.0.1:22
+ [PKT] 192.168.1.1:443
+ [PKT] 10.0.0.15:8080
+
+
+
+ +
+
+ PING 8.8.8.8
+ 64 bytes: 12ms
+ 64 bytes: 11ms
+ 64 bytes: 13ms
+ _ +
+
+ +
+
+ > tail -f /var/log
+ [INFO] Process OK
+ [WARN] High load detected - time for coffee break
+ [INFO] Connected to database (it's in a relationship now)
+ [ERROR] 404: Motivation not found
+ [WARN] Firewall detected actual fire, calling emergency services
+ [INFO] Successfully hacked into mainframe (jk it's just localhost)
+ [ERROR] Keyboard not found. Press F1 to continue.
+ [WARN] Too many open tabs. Browser having existential crisis.
+ [INFO] Ping 127.0.0.1 - there's no place like home
+ [ERROR] SQL injection attempt detected. Nice try, Bobby Tables.
+ _ +
+
+
+{{ end }} diff --git a/layouts/partials/buy_me_a_coffee.html b/layouts/partials/buy_me_a_coffee.html deleted file mode 100644 index 3c8e774..0000000 --- a/layouts/partials/buy_me_a_coffee.html +++ /dev/null @@ -1,3 +0,0 @@ -
- If you found this article useful, consider buying me a coffee. Every tip received makes my electricity bill seem less bad. -
\ No newline at end of file diff --git a/layouts/partials/comments.html b/layouts/partials/comments.html deleted file mode 100644 index 21a7e3a..0000000 --- a/layouts/partials/comments.html +++ /dev/null @@ -1,7 +0,0 @@ - \ No newline at end of file diff --git a/layouts/partials/footer.html b/layouts/partials/footer.html deleted file mode 100644 index f7cf45b..0000000 --- a/layouts/partials/footer.html +++ /dev/null @@ -1,130 +0,0 @@ -{{- if not (.Param "hideFooter") }} -
- {{- if site.Copyright }} - {{ site.Copyright | markdownify }} - {{- else }} - © {{ now.Year }} Dan Baker - {{- end }} -
-{{- end }} - -{{- if (not site.Params.disableScrollToTop) }} - - - - - -{{- end }} - -{{- partial "extend_footer.html" . }} - - - -{{- if (not site.Params.disableScrollToTop) }} - -{{- end }} - -{{- if (not site.Params.disableThemeToggle) }} - -{{- end }} - -{{- if (and (eq .Kind "page") (ne .Layout "archives") (ne .Layout "search") (.Param "ShowCodeCopyButtons")) }} - -{{- end }} diff --git a/layouts/partials/head.html b/layouts/partials/head.html deleted file mode 100644 index 3e55c67..0000000 --- a/layouts/partials/head.html +++ /dev/null @@ -1,157 +0,0 @@ - - - -{{- if hugo.IsProduction | or (eq site.Params.env "production") | and (ne .Params.robotsNoIndex true) }} - -{{- else }} - -{{- end }} - -{{- /* Title */}} -{{ if .IsHome }}{{ else }}{{ if .Title }}{{ .Title }} | {{ end }}{{ end }}{{ site.Title }} - -{{- /* Meta */}} -{{- if .IsHome }} -{{ with site.Params.keywords -}}{{ end }} -{{- else }} - -{{- end }} - - - -{{- if site.Params.analytics.google.SiteVerificationTag }} - -{{- end }} -{{- if site.Params.analytics.yandex.SiteVerificationTag }} - -{{- end }} -{{- if site.Params.analytics.bing.SiteVerificationTag }} - -{{- end }} -{{- if site.Params.analytics.naver.SiteVerificationTag }} - -{{- end }} - -{{- /* Styles */}} - -{{- /* includes */}} -{{- $includes := slice }} -{{- $includes = $includes | append (" " | resources.FromString "assets/css/includes-blank.css")}} - -{{- if not (eq site.Params.assets.disableScrollBarStyle true) }} - {{- $ScrollStyle := (resources.Get "css/includes/scroll-bar.css") }} - {{- $includes = (append $ScrollStyle $includes) }} -{{- end }} - -{{- $includes_all := $includes | resources.Concat "assets/css/includes.css" }} - -{{- $theme_vars := (resources.Get "css/core/theme-vars.css") }} -{{- $reset := (resources.Get "css/core/reset.css") }} -{{- $media := (resources.Get "css/core/zmedia.css") }} -{{- $license_css := (resources.Get "css/core/license.css") }} -{{- $common := (resources.Match "css/common/*.css") | resources.Concat "assets/css/common.css" }} - -{{- /* markup.highlight.noClasses should be set to `false` */}} -{{- $chroma_styles := (resources.Get "css/includes/chroma-styles.css") }} -{{- $chroma_mod := (resources.Get "css/includes/chroma-mod.css") }} - -{{- /* order is important */}} -{{- $core := (slice $theme_vars $reset $common $chroma_styles $chroma_mod $includes_all $media) | resources.Concat "assets/css/core.css" | resources.Minify }} -{{- $extended := (resources.Match "css/extended/*.css") | resources.Concat "assets/css/extended.css" | resources.Minify }} - -{{- /* bundle all required css */}} -{{- /* Add extended css after theme style */ -}} -{{- $stylesheet := (slice $license_css $core $extended) | resources.Concat "assets/css/stylesheet.css" }} - -{{- if not site.Params.assets.disableFingerprinting }} -{{- $stylesheet := $stylesheet | fingerprint }} - -{{- else }} - -{{- end }} - -{{- /* Search */}} -{{- if (eq .Layout `search`) -}} - -{{- $fastsearch := resources.Get "js/fastsearch.js" | js.Build (dict "params" (dict "fuseOpts" site.Params.fuseOpts)) | resources.Minify }} -{{- $fusejs := resources.Get "js/fuse.basic.min.js" }} -{{- $license_js := resources.Get "js/license.js" }} -{{- if not site.Params.assets.disableFingerprinting }} -{{- $search := (slice $fusejs $license_js $fastsearch ) | resources.Concat "assets/js/search.js" | fingerprint }} - -{{- else }} -{{- $search := (slice $fusejs $fastsearch ) | resources.Concat "assets/js/search.js" }} - -{{- end }} -{{- end -}} - -{{- /* Favicons */}} - - - - - - - - -{{- /* RSS */}} -{{ range .AlternativeOutputFormats -}} - -{{ end -}} -{{- range .AllTranslations -}} - -{{ end -}} - - - -{{- partial "extend_head.html" . -}} - -{{- /* Misc */}} -{{- if hugo.IsProduction | or (eq site.Params.env "production") }} -{{- template "_internal/google_analytics.html" . }} -{{- template "partials/templates/opengraph.html" . }} -{{- template "partials/templates/twitter_cards.html" . }} -{{- template "partials/templates/schema_json.html" . }} -{{- end -}} diff --git a/layouts/partials/header.html b/layouts/partials/header.html deleted file mode 100644 index a9e68cb..0000000 --- a/layouts/partials/header.html +++ /dev/null @@ -1,149 +0,0 @@ -{{- /* theme-toggle is enabled */}} -{{- if (not site.Params.disableThemeToggle) }} -{{- /* theme is light */}} -{{- if (eq site.Params.defaultTheme "light") }} - -{{- /* theme is dark */}} -{{- else if (eq site.Params.defaultTheme "dark") }} - -{{- else }} -{{- /* theme is auto */}} - -{{- end }} -{{- /* theme-toggle is disabled and theme is auto */}} -{{- else if (and (ne site.Params.defaultTheme "light") (ne site.Params.defaultTheme "dark"))}} - -{{- end }} - -
- -
diff --git a/layouts/partials/home_info.html b/layouts/partials/home_info.html deleted file mode 100644 index 961ddc4..0000000 --- a/layouts/partials/home_info.html +++ /dev/null @@ -1,34 +0,0 @@ -{{- with site.Params.homeInfoParams }} -
-
-

{{ .Title | markdownify }}

-
- -
- -
-
- {{- $me := resources.Get "/images/me.webp" }} - -
-
- {{ .Content | markdownify }} - -
- {{- partial "nowplaying.html" . }} -
-
-
- - - -
- {{ partial "social_icons.html" (dict "align" site.Params.homeInfoParams.AlignSocialIconsTo) }} -
-
- - - - -
-{{- end -}} diff --git a/layouts/partials/lavalamp.html b/layouts/partials/lavalamp.html new file mode 100644 index 0000000..1926071 --- /dev/null +++ b/layouts/partials/lavalamp.html @@ -0,0 +1,25 @@ +
+ + + + + + + + + + +
+
+
+
ABOUT
+
+
+
+
+
diff --git a/layouts/partials/nowplaying.html b/layouts/partials/nowplaying.html index 5a43c93..1df4095 100755 --- a/layouts/partials/nowplaying.html +++ b/layouts/partials/nowplaying.html @@ -5,7 +5,6 @@
-

Recently listening to:

🎵 -
diff --git a/layouts/partials/terminal.html b/layouts/partials/terminal.html new file mode 100644 index 0000000..e69de29 diff --git a/static/android-chrome-192x192.png b/static/android-chrome-192x192.png deleted file mode 100644 index b9495bff34f269dbf8640d4e7b7ca2523f922971..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8050 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 diff --git a/static/apple-touch-icon.png b/static/apple-touch-icon.png index 68754407fb6e4041a72631b99e48539bf0a144a2..ab80c3580381f82b76244e9abef2b4ac1496c254 100644 GIT binary patch literal 20500 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 K%azNR1pOD3Sy#FM diff --git a/static/css/nowplaying.css b/static/css/nowplaying.css deleted file mode 100755 index e68edea..0000000 --- a/static/css/nowplaying.css +++ /dev/null @@ -1,28 +0,0 @@ -.nowplayingcard { - margin: auto; - padding: 14px; -} - -.nowplayingcontainer-inner { - transition: 0.3s; - display: inline-flex; - - .trackInfo { - width: 100%; - } - - #album { - display: none; - } -} - -img#trackart { - transition: 0.3s; - width: 60px; - height: 50px; - padding-left: 10px; -} - -img#trackart[src=""] { - display: none; -} diff --git a/static/favicon-16x16.png b/static/favicon-16x16.png deleted file mode 100644 index a02a28fafb20aa8330799004c8fefa1b70f02786..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1142 zcmZ`%drXs86u(drY#|Pj$0nPFu2^)G?U;zltn z(JdQ-!q}{faf@WI6;W_l+A%i9HZW!hy79{5KnPTjh+~5frNFg2jhmnc4-u=`m)*!h`St0neXE4gDY>WeHXLP zj?cAmJ4!=Zi+0bnp!V{XIx)&Y&b49-?byG!d6Xl1@{7o&PJG^qnnOScPc+=@LW3+d zDbrn_;srtr_Vx{m{O!7Rq=jA?yUphd6uZp5fW)scC1UJNCGHkMG<- zXJChX68|dxFTCx*6z=?eCOl&PkGee19lccX-di&dAI^MC584|Z9`0)`YdMY>-Hu5_ zDNXf7`{K~S(QPt+#F6b;Nu$qb*x4`h+$(eQ!7hBY4p`IW>94t680WI7dA`GBBRE)+CK(zW zylgqzUCDI!Z#;BgPg>u3{F+_i-&MZsLw=t7=bNV$H3QdXnlkg=g5bTgiRvm*LDq4N z!gv;_geUd#oRY%qidv>3k;7|kuTIVx?VoKPiPfG@JpIF$zh;C1Q1J5Q9Jo3~8Z*WJa~c2KcG2Gm|R*imI{lQ7$quQloUx-va7fQRvj2n>(F;#4@s zk0SUuz7NCr7?x0-<(kj)fVWHXiwu=74v>Z}E~0>}Q>tu}QhSnVEGsb-73-O%N~4}x zWHjjjsIW{ed3%*+ayWzXp*!MfC7`hwTph!Y004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 zVoOIv0RI600RN!9r;`8x00(qQO+^Rj0SO8s4AnT=r~m*2T}ebiR9M5smraZmMHGO) zSKZS+JH!6K>dtx)R1m=*kVGW$hXcVx6Jty?@#M_|2NM%do=8kQa6&w(QHfbij2BOC z#Gfe9gOI31qZXAf0?r-0q~KIC%GqWU-@1%jZDViAmak-53U7;|!^ z26_XuBiHsN9cjZj2QxG6wjl6O^;Ya3FqwLZoB$${1e{&i4vhxX>nCyc{EYz+0XPPH zi?!_u7e=+(B8omD2 zlZxH$P7|ob%0iP3;0(|TpZKLGz*4*5K2<&iZd1hp?esQ5OR9Dh2MUV8%6}J82lfG( z^05>^3Ahu;r{|>SxEr#jV7Vg9R3HC0vK~a4LQD?9quH#Nrl;)2>i7=N_o=Ak5`yh} z^2CY^q)#H9qap2?hZvt~#l0%Rk0SgaMvjWd%j(pxAK9^b01=2|Wp*Z^eAVJy3W#=0 zFo$r~TCJ(F*%<#d}1XYTvPS6BJS#=R!A5>uDram^@kta!%ATSuiq7+>GYyP>j6SJFgp|{u1 zflX?ls%fe+16T{@TEaX}@I1Mmo^GmQ)FzmGe$U9J(LJ|}_zbQKQPp{b%W3)O4Ip5x zGCSi4^TN>3a%E!>@yO+KwY~wrv1Z6a3^kOu)$#|j7-12BDj+n01PGmNw*`Ta^Sdiv zY*P^vAYv#M>IbS7{Y;&Ds#Mf6DMFG@xeL+_C})64;GQH=;uzMhGdKrVW-Y!i3@$Ly zz60_Y6JTv^CJ5!o?d$!CEFUDPK63@{Z{R&3R)uoe(P(t_>Gg@bCPWl#t4>`!2K?G{ z=5B@;$Eo+X0Th6j)VWvGahK-{`Mlu!3x5x~MCx3lQ1lKJ`uzho(Q=m6FA30r_aB^>EX>4U6ba`-PAZc)PV*mhnoa6Eg2ys>@ zD9TUE%t_@^00ScnE@KN5BNI!L6ay0=M1VBIWCJ6!R3OXP)X2ol#2my2%YaCrN-hBE W7ZG&wLN%2D0000 diff --git a/static/favicon-96x96.png b/static/favicon-96x96.png new file mode 100644 index 0000000000000000000000000000000000000000..e486c972673cfec170b8622ba64a9ac480ffab76 GIT binary patch literal 7393 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 Tzo_D^00000NkvXXu0mjf>e|`J literal 0 HcmV?d00001 diff --git a/static/favicon.ico b/static/favicon.ico index 88e7e018478d635310fa9663b38fda7204ebdcf3..802d5fe28e5690eda845a6d9276006ac9887b43a 100644 GIT binary patch literal 15086 zcmeHO33OG}xjqqFs_#X4Ev;Iqpca&>Xq`%(QWSkY?Q>uiYDH073WNxRBogKX5D0^1 z2q7T}ButqH5;8!-5C{s$Oy>Cpl0Xg4l_v3qM7rL3u-10xo_o*P|GfA4 zzF$qV(Ryi5J*8nDpoI+7wC6QV8!*89xsRq5;#wcf{C>jinzjf(coe_EE!w9TyngH7 zEeqVTz%2{(lm$d4^)?#6uzsC-p0raSxZt z$Ain|qbDymjef3FM!k5hdBm_EN`|gJSGV;=#5HYw(dh8Ya{^n7$=1b9A3jskH1hXn znnv0cH^2Y-*@k!CE^7Gi5nWxUr+>d!#dVvl8Q0g_x*WDXTmSy6WzFxuSZFEt+-Df>5kG0QZT+`N-=D031PV8SP;|HEYT$jq|r_al%p_aBj)BNW9g>`TI zxv+8A#|8CvV+(3unwZ}()Y01Ydg6EO)sXMnden2pGV&$e*2T4Ny=!Uf{Q8&27uLQo zDX->vmz=t1XXaEt>7HFb97B%Dy;<~uu z?RN|fum7p2arlRf>q6SP{)I^eb-#1Yt9y0^ZJky7#G>q~$ChW-3|gI0{p)oZRSyPa zR1VnM9XYSRSC8xV>a|`&%FH#yfEq$u7uCJ_0phyV)&;dgr_$EBb!J;vKfWZh=Fye3 zb!PQL{+U(%H>FoT5Rz7Le{@>aeeu`J(B04N)ezQe#x-qSVz#wjLker#Y~32yuytn5 zW6LwD26Sp}@19dve|muO?(kh9V?X%d)$Yp9`z>oonT&Wv zuh%NB+o>V>b-W@&->y_FE+JQ*N$fFAVvd@}x3`J6%M|gM?%ZWP^m@%2g1DZM#d^)S zZml7Md}!;f3ua01qPY^b#9a;rtdS$I^YI{GIb5#E;q#gtI;Y7urJ5A%j1a@_Xw2b~ z6}weVhX=^fEk5!M{Ikz{xg@V#DDg|&WZV215;n_Of?TIa=qwircXw6#_^x@iOFF1} z-Chl;e8_+OOeYDL?IN4pT;Y2U*#}!6F6=8uE^2c0k|xKtu9K6Y>m@BRP%>k-NKRa^ zj7-r$ug*W6+a2?_c*1*}ZzPBrcmLF<;J-h&e72G;OkkV4X0x=@R+n z9EtXrCw|*(yQBkah-JO@c6JcoX;UO(w_O$d>U=uOB0e~CJ*$wByNbtq!#s|B)s(Hx0%n?(JP4-|E@7V@lgekwA z3|p__jrXN^Et8~wd?|4rb0vD-bP0v+Q;JM^5;1S4L@ja?-&w9!*`Im1Y1zEhYap}d zr18p^Tsx&eQ_qftkK;YuRLw|Uxk%Ly#&E2M|N19GEWNu2Zd&oxY*`-cu(ckDMe4^5I_f=b>IrM&Cedew__|C&4k5--*Fq74d=3Ze z0%Mag#5kp`cEaZ>hP;-Vb6}OK>#Qv*2T*4+qV*g=9Yy}q2dt^Qej?N#{#q*s{8p+s z)N>#TwIKv+drlrNUXBy5StGk2Wc2-FvTQ%DN#ycRln)t)%q8VZ{JrgnCi{y~r?JGB%k5%sJ1`$5&Y+ zyFYXd$35ITcrWc7jv5(eAwTUA6y9H=-KQ%b$0OIcZ*ooUp^V`Jek)Ww)21p1R2|)D zs-uXRs8tKZ@uT`%9eiDe-b#rsO%^KNb zJlwYUh5tgfuW(c`&HW=9@y$GqI0RpOiyW9~nFCI!qk0a^Hst_g2zJ}EW=X3Yl+)$2 z_oSrhFJfqTTk>mPkgTe~f-|Su=eQ^DLw#gzNK9)xHw0mQYvk5{6F6s@Y!Cl~iaF*a zZfag>#Zp(qGD!1t)JqIl9e9`DEcsIsylJaX4rL6fADQwm>mYNHHIXv0{^~Ilu3`u|JOerGiai}O^Md+W z%3ap-8RY#Oa=XYSaaD8qH3!K5shnwi5Axe}C_n35dg+8N%fD;o!oO`qEGMGoCgA)< z`F*z_4_f6%3?UXRbAWlE%bj*zHrXVDvqP!C8P2oIdSDb<=b-8`NJ}Q(@X4C>`a*Y=ukbj zt(g;6x!o0reB^m@18NO(fcu{*2T(`x9pi=j0A>IBEcREdf8z2Tl3wwE*ri_TOwBXY9=r!|f6qK;-{sh8Pq+9b z?nUcoIEkODqdI4r?z92l!E!FxOBQUu zJL3@*J0nMq>}9!rPyfAXhpjpT^F5H~XTDz@y<{UNuiS;$xDR?fD4A6Qk*ANqFTYkc zKYg{Y97n9tUp(g@K-@6yb1y=6+P=&lXTICJTsLn-x408F*Ea2h4zQiB1K$t%{z6|c zCr-l7)Q7Qh{PK^L+{_p5SB&|6g+ErZGj1{=`wtN}o#_^kU@M!GOnzVt)1H)#de9%N zEgY1Y?`Dh_#vAp`zii(odk^JoXR>zm9d)1|h#~C7I}P<j)7~b`;Wo*; z)Fyj8-V^*{Y;Q`;bf`nTtpq08N^+Lz48!*`<|Ose2jh%79xr)Kc4nB)IWfm#7+Sdh;{pyE$XQ{+uCz(i4B1?2-cB9@nL!w`rz@`T4su`?LmN z`~l-upB9Yp|K#6M8TX@qhpI;Oi(vfp68bSN$fpBuh79D)FUh34*mH9g{S;;L*>B3w zOHmG<{D)khx>hJ%$M!o5U9ZTPA?KS$4Lw^wV%XV+ci$pc+|%ou`UBe6wY2$}Zj>i(Ft%6pP- zWPQsRZdX_IcjVSQ)v9YIdJU*+dS$-|^7Y`o_nxZgb7*&V-^}5|hYuuI(Iq+17pBKB z{aUE|)vRlF^>3C@S3Z}zCU}1(N#J{T2d;XzY7^|IHjH6i*OM0?4%{%)S%{?(hv)k=c}(&GC&3?( z=OF(??t?rmxj*twk1$hfyU82qI;TF4x-A6zPINA8n+5;+Jym%QQ;#sD}N`kb5{`v?k?B3tA0 zYk$N5xC3IxYrz?Iv^KF##^$#9;8GE13ezMX1dfvUGVRAWqAmG6azWp$U!}NE=P@H% zF=rinww!4%ayT8W&FfrS@e9Zm`kVL!?WKGMIT$~&3uh@_oSdxw{K&{L3fm@*no~VQ z;Y-X%VqiO9Gi&f8zo@%`PtQ{}Qv3{bWeg}>-5dkN*_p>&H#+vu3O_gT08VnQWvs%` zb83Ez_4_ESi0jj5I_}(=?(9=g90hp2EqmyL8A@N~tm5S01FlQludx1A#rf!1J~@ce z=8vVQ;Z0!3PbmDGc}gyuF>KBH3CkB4$!U2leM9+x{0MzOZiKiz*CxK02Aq_*De>Qu zrVkbOQ3^b}xbYo@siNOZ)g@w=#A~w7oA5iIsJkw7roZKPf#9^svl5#ouFJKFUlD&h ze)&#?dr}5s&j#pRSU(&x4FxVbNa;>Yj+hpCJK~2ufdi4}B34HHk1`N1&Z>G;VfLIA zevIqH1X(AKl?-jwy(iWucEmbJ8E6Ok;@IUML6)DWS;v0)eI77KVyEP&dtz0{!eoVo5k#5*xWwKn>cdU9=D2I87Qd+t=6CgY1X;Y^N`SQ>fSn}MMb2P3XW zc{pzX4#su2?CM>k%X(|J&H^UfK>u$&{zw%uqQ$-eBLxHKL<5kG3Nj%R81)Uj794?T43 z!QmN|=PaJT*c)fr6UViP<8yE3nTqFO_Ehl<#vUs6PVr32>pVkP_L#BXyHp-xkG%X|4Z zIe4CLC>PJR>=hx8OHQ4A8065&ZE^4HtbUVoCD+RRkeoX?RdU4SP{}iqGqr{*W$or3 z!Zr1MoBKy+YhSMuIU@2Y^f~#6>%Z@*&nAo$IA?!gx)=tG6b@jv1}wta9k{JKFk21- OMg#EL7CYP{n)Xk~XuJ0S literal 15086 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 diff --git a/static/favicon.svg b/static/favicon.svg new file mode 100644 index 0000000..835e553 --- /dev/null +++ b/static/favicon.svg @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/static/mstile-150x150.png b/static/mstile-150x150.png deleted file mode 100644 index 91167d951a60c30c4012c0acd53be074e99d1bd4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5629 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 diff --git a/static/site.webmanifest b/static/site.webmanifest new file mode 100644 index 0000000..93e87fe --- /dev/null +++ b/static/site.webmanifest @@ -0,0 +1,21 @@ +{ + "name": "ritual.sh", + "short_name": "ritual.sh", + "icons": [ + { + "src": "/web-app-manifest-192x192.png", + "sizes": "192x192", + "type": "image/png", + "purpose": "maskable" + }, + { + "src": "/web-app-manifest-512x512.png", + "sizes": "512x512", + "type": "image/png", + "purpose": "maskable" + } + ], + "theme_color": "#ffffff", + "background_color": "#ffffff", + "display": "standalone" +} \ No newline at end of file diff --git a/static/web-app-manifest-192x192.png b/static/web-app-manifest-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..7a7febd301b85cc7f4e0bd0ab107ccb2974b10ee GIT binary patch literal 21323 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 literal 0 HcmV?d00001 diff --git a/static/web-app-manifest-512x512.png b/static/web-app-manifest-512x512.png new file mode 100644 index 0000000000000000000000000000000000000000..bb973cbe4785b51ee74d0b9d9f2844aa4279243f GIT binary patch literal 94361 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 JM8}g}}!0gAE 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 literal 0 HcmV?d00001 diff --git a/themes/PaperMod b/themes/PaperMod deleted file mode 160000 index 66904cc..0000000 --- a/themes/PaperMod +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 66904cc4c2b292e6a3686d483e4054904a9f3954 diff --git a/themes/hugo-starter b/themes/hugo-starter new file mode 160000 index 0000000..d876912 --- /dev/null +++ b/themes/hugo-starter @@ -0,0 +1 @@ +Subproject commit d876912bf596a5257b3c3fab674a0ff6bf544c5b