From 5cd8dfe0f833aeb1290f61c5400d0ae6a72324e6 Mon Sep 17 00:00:00 2001 From: Arjun Vinod Date: Tue, 11 Nov 2025 14:02:47 -0800 Subject: [PATCH 01/71] Enhance website: refined intro, dark/light theme toggle, remove welcome header --- index.html | 162 +++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 131 insertions(+), 31 deletions(-) diff --git a/index.html b/index.html index 1374f6c..9ef0a8e 100644 --- a/index.html +++ b/index.html @@ -11,30 +11,52 @@ +

Arjun Vinod

+
+ +
-

Welcome to My Website

-

Hi! I'm Arjun, a Firmware Engineer based in Silicon Valley with expertise in embedded systems and hardware interfaces.

+

Hi! I'm Arjun, a Firmware Engineer based in Silicon Valley. I specialize in developing high-performance embedded systems, optimizing firmware for data center infrastructure, and designing robust hardware interfaces for next-generation connectivity solutions.

Experience

From 5274d11048451266aeeef4aa1f6f44ede30b334e Mon Sep 17 00:00:00 2001 From: Arjun Vinod Date: Tue, 11 Nov 2025 15:13:48 -0800 Subject: [PATCH 02/71] books: robust cover loading with ISBN fallbacks and theme-aware placeholder; improve alt text --- books.html | 619 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 619 insertions(+) create mode 100644 books.html diff --git a/books.html b/books.html new file mode 100644 index 0000000..af80d5e --- /dev/null +++ b/books.html @@ -0,0 +1,619 @@ + + + + + + + Books | Arjun Vinod + + + + + + + + + +
+
+

Arjun Vinod

+
+ +
+ +
+
+
+
+
+
+

Reading List

+ +

2025

+

+ A collection of books exploring macroeconomics, financial systems, and monetary history. +

+ +
+
+ + The Deficit Myth by Stephanie Kelton + +
+
+
The Deficit Myth: Modern Monetary Theory and the Birth of the People's Economy
+
by Stephanie Kelton
+
+
+ +
+
+ + Layered Money by Nik Bhatia + +
+
+
Layered Money: From Gold and Dollars to Bitcoin and Central Bank Digital Currencies
+
by Nik Bhatia
+
+
+ +
+
+ + The Price of Tomorrow by Jeff Booth + +
+
+
The Price of Tomorrow: Why Deflation Is the Key to an Abundant Future
+
by Jeff Booth
+
+
+ +
+
+ + The Big Print by Lawrence Lepard + +
+
+
The Big Print: What Happened to America and How Sound Money Will Fix It
+
by Lawrence Lepard
+
+
+ +
+
+ + The Case Against the Fed by Murray N. Rothbard + +
+
+
The Case Against the Fed
+
by Murray N. Rothbard
+
+
+ +
+
+ + Paper Soldiers by Saleha Mohsin + +
+
+
Paper Soldiers: How the Weaponization of the Dollar Changed the World Order
+
by Saleha Mohsin
+
+
+
+
+ + + From a59bff364f058986ee44a7a2b40b76bbf2a00967 Mon Sep 17 00:00:00 2001 From: Arjun Vinod Date: Tue, 11 Nov 2025 15:16:19 -0800 Subject: [PATCH 03/71] index: update landing content and keep header/footer consistent with books page --- index.html | 103 ++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 98 insertions(+), 5 deletions(-) diff --git a/index.html b/index.html index 9ef0a8e..80e6b55 100644 --- a/index.html +++ b/index.html @@ -194,6 +194,72 @@ justify-content: space-between; align-items: center; } + .header-right { + display: flex; + gap: 1rem; + align-items: center; + } + .menu-wrapper { + position: relative; + } + .menu-button { + background: none; + border: 1px solid var(--border-color); + color: var(--text-primary); + cursor: pointer; + padding: 0.5rem 0.75rem; + border-radius: 5px; + font-size: 1rem; + transition: all 0.3s ease; + display: flex; + align-items: center; + gap: 0.5rem; + } + .menu-button:hover { + background-color: var(--border-color); + } + .menu-dropdown { + position: absolute; + top: calc(100% + 0.5rem); + right: 0; + background-color: var(--container-bg); + border: 1px solid var(--border-color); + border-radius: 5px; + box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); + min-width: 150px; + display: none; + z-index: 1000; + } + .menu-dropdown.show { + display: block; + } + .menu-dropdown a { + display: block; + padding: 0.75rem 1rem; + color: var(--text-primary); + text-decoration: none; + transition: background-color 0.3s ease; + } + .menu-dropdown a:hover { + background-color: var(--border-color); + } + .menu-dropdown a:first-child { + border-radius: 5px 5px 0 0; + } + .menu-dropdown a:last-child { + border-radius: 0 0 5px 5px; + } + nav a { + color: var(--text-primary); + text-decoration: none; + font-size: 0.95rem; + padding: 0.5rem 1rem; + border-radius: 5px; + transition: background-color 0.3s ease; + } + nav a:hover { + background-color: var(--border-color); + } header h1 { color: var(--text-primary); margin: 0; @@ -343,18 +409,45 @@ const icon = document.querySelector('.theme-toggle-slider i'); icon.className = theme === 'light' ? 'fas fa-moon' : 'fas fa-sun'; }); + + // Menu dropdown toggle + function toggleMenu() { + const dropdown = document.querySelector('.menu-dropdown'); + dropdown.classList.toggle('show'); + } + + // Close dropdown when clicking outside + document.addEventListener('click', function(event) { + const menuWrapper = document.querySelector('.menu-wrapper'); + if (menuWrapper && !menuWrapper.contains(event.target)) { + const dropdown = document.querySelector('.menu-dropdown'); + if (dropdown) { + dropdown.classList.remove('show'); + } + } + });

Arjun Vinod

-
- + - +
+
+ +
From 676eb2beea4e27ad9efd02295422e032d2b21aa9 Mon Sep 17 00:00:00 2001 From: Arjun Vinod Date: Tue, 11 Nov 2025 15:19:34 -0800 Subject: [PATCH 04/71] footer: replace Twitter bird icon with new X brand icon (Font Awesome) --- books.html | 4 ++-- index.html | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/books.html b/books.html index af80d5e..8416ab0 100644 --- a/books.html +++ b/books.html @@ -599,8 +599,8 @@

2025

-
The Case Against the Fed
+

The Case Against the Fed

by Murray N. Rothbard

A foundational critique of the Federal Reserve System, examining its origins, operations, and effects on the economy while arguing for a return to free-market banking and sound money backed by gold.

@@ -321,7 +322,7 @@

2025

-
Paper Soldiers: How the Weaponization of the Dollar Changed the World Order
+

Paper Soldiers: How the Weaponization of the Dollar Changed the World Order

by Saleha Mohsin

An inside look at how the U.S. dollar became a powerful geopolitical weapon through financial sanctions and economic warfare, reshaping global power dynamics and raising questions about the future of American financial dominance.

diff --git a/css/styles.css b/css/styles.css index 03f6ace..0c7fbba 100644 --- a/css/styles.css +++ b/css/styles.css @@ -95,7 +95,7 @@ header { padding: 0.75rem 1rem; color: var(--text-primary); text-decoration: none; - transition: background-color 0.3s ease; + transition: background-color 0.3s ease, color 0.3s ease; } .menu-dropdown a:hover { background-color: var(--border-color); } .menu-dropdown a:first-child { border-radius: 5px 5px 0 0; } @@ -108,12 +108,38 @@ nav a { color: var(--text-primary); text-decoration: none; font-size: 0.95rem; p nav a:hover { background-color: var(--border-color); } /* Theme Toggle */ .theme-toggle-wrapper { position: relative; display: inline-block; } -.theme-toggle { position: relative; width: 60px; height: 30px; background-color: var(--border-color); border-radius: 15px; cursor: pointer; transition: background-color 0.3s ease; border: none; padding: 0; } +.theme-toggle { + --toggle-width: 60px; + --slider-size: 24px; + --padding: 3px; + position: relative; + width: var(--toggle-width); + height: 30px; + background-color: var(--border-color); + border-radius: 15px; + cursor: pointer; + transition: background-color 0.3s ease; + border: none; + padding: 0; +} .theme-toggle:hover { opacity: 0.8; } -.theme-toggle-slider { position: absolute; top: 3px; left: 3px; width: 24px; height: 24px; background-color: #fff; border-radius: 50%; transition: transform 0.3s ease; display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 4px rgba(0,0,0,0.2); } +.theme-toggle-slider { + position: absolute; + top: var(--padding); + left: var(--padding); + width: var(--slider-size); + height: var(--slider-size); + background-color: #fff; + border-radius: 50%; + transition: transform 0.3s ease; + display: flex; + align-items: center; + justify-content: center; + box-shadow: 0 2px 4px rgba(0,0,0,0.2); +} .theme-toggle-slider i { font-size: 0.75rem; color: #2c3e50; } [data-theme="dark"] .theme-toggle { background-color: var(--link-color); } -[data-theme="dark"] .theme-toggle-slider { transform: translateX(30px); } +[data-theme="dark"] .theme-toggle-slider { transform: translateX(calc(var(--toggle-width) - var(--slider-size) - (var(--padding) * 2))); } [data-theme="dark"] .theme-toggle-slider i { color: #f39c12; } /* Footer */ footer { background-color: transparent; color: var(--text-muted); padding: 0.75rem 0; text-align: center; margin-top: auto; width: 100%; border-top: 1px solid var(--border-color); font-size: 0.9rem; } @@ -145,7 +171,7 @@ footer { background-color: transparent; color: var(--text-muted); padding: 0.75r .book-cover a:hover { transform: translateY(-4px); opacity: 0.9; } .book-cover img { width: 100%; height: auto; border-radius: 4px; box-shadow: 0 2px 8px rgba(0,0,0,0.1); } .book-details { flex: 1; } -.book-title { color: var(--text-primary); font-size: 1.1rem; font-weight: 500; margin-bottom: 0.25rem; } +.book-title { color: var(--text-primary); font-size: 1.1rem; font-weight: 500; margin-bottom: 0.25rem; margin-top: 0; } .book-author { color: var(--text-muted); font-size: 0.9rem; font-style: italic; margin-bottom: 0.5rem; } .book-notes { color: var(--text-secondary); font-size: 0.95rem; line-height: 1.6; } /* Misc */ diff --git a/js/menu.js b/js/menu.js index e46038b..e13f624 100644 --- a/js/menu.js +++ b/js/menu.js @@ -30,6 +30,7 @@ document.addEventListener('DOMContentLoaded', function() { if (dropdown.classList.contains('show')) { dropdown.classList.remove('show'); btn.setAttribute('aria-expanded', 'false'); + btn.focus(); // Return focus to button } } }); @@ -37,7 +38,7 @@ document.addEventListener('DOMContentLoaded', function() { // Close dropdown when focus leaves the menu area menuWrapper.addEventListener('focusout', function(event) { // If the newly focused element is not inside the menu wrapper, close the dropdown - if (!menuWrapper.contains(event.relatedTarget)) { + if (!event.relatedTarget || !menuWrapper.contains(event.relatedTarget)) { if (dropdown.classList.contains('show')) { dropdown.classList.remove('show'); btn.setAttribute('aria-expanded', 'false'); diff --git a/js/theme.js b/js/theme.js index 438d3da..ac2d73d 100644 --- a/js/theme.js +++ b/js/theme.js @@ -15,11 +15,17 @@ function toggleTheme() { const icon = document.querySelector('.theme-toggle-slider i'); if (icon) icon.className = newTheme === 'light' ? 'fas fa-moon' : 'fas fa-sun'; + // Update aria-label for accessibility + const btn = document.querySelector('.theme-toggle'); + if (btn) { + btn.setAttribute('aria-label', newTheme === 'light' ? 'Switch to dark mode' : 'Switch to light mode'); + } + // Dispatch custom event for theme change document.dispatchEvent(new CustomEvent('themeChanged', { detail: { theme: newTheme } })); } -// Set initial icon on page load +// Set initial icon and aria-label on page load window.addEventListener('DOMContentLoaded', () => { const theme = document.documentElement.getAttribute('data-theme'); const icon = document.querySelector('.theme-toggle-slider i'); @@ -28,4 +34,10 @@ window.addEventListener('DOMContentLoaded', () => { } else { console.warn('Theme toggle icon element not found'); } + + // Set initial aria-label + const btn = document.querySelector('.theme-toggle'); + if (btn) { + btn.setAttribute('aria-label', theme === 'light' ? 'Switch to dark mode' : 'Switch to light mode'); + } }); From 3bc33ccad077ead1a95df1ee22fac7210a7f2a55 Mon Sep 17 00:00:00 2001 From: Arjun Vinod Date: Wed, 12 Nov 2025 23:00:30 -0800 Subject: [PATCH 46/71] Revert "Update index.html" This reverts commit 590ed95b9afc7431b71a8251d5bd5dcc91457aa2. --- index.html | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index c5e7f02..af62234 100644 --- a/index.html +++ b/index.html @@ -85,7 +85,12 @@
-