feat(samples): align dual pane explorer with canonical system specs and logs

This commit is contained in:
venus
2026-09-05 15:15:46 -05:00
parent 9f4758039a
commit 451fb34f52
+148 -68
View File
@@ -207,12 +207,24 @@
<!-- Top Breadcrumbs Bar --> <!-- Top Breadcrumbs Bar -->
<header class="top-nav"> <header class="top-nav">
<div> <div style="display: flex; align-items: center; gap: 12px;">
<span class="status-dot"></span> <span class="status-dot"></span>
<span>RIVER ROOKS // TREE EXPLORER</span> <span style="font-weight: 700;">RIVER ROOKS // TREE EXPLORER</span>
<span style="color: var(--border-color);">|</span>
<nav style="display: flex; gap: 8px; font-size: 0.78rem;">
<a href="index.html" style="color: var(--text-primary); text-decoration: none;">Catalog</a>
<span style="color: var(--border-color);">/</span>
<a href="homepage.html" style="color: var(--text-muted); text-decoration: none;">Sample 1</a>
<span style="color: var(--border-color);">/</span>
<a href="homelab.html" style="color: var(--text-muted); text-decoration: none;">Homelab</a>
<span style="color: var(--border-color);">/</span>
<a href="public-services.html" style="color: var(--text-muted); text-decoration: none;">Services</a>
<span style="color: var(--border-color);">/</span>
<a href="sample-dashboard.html" style="color: var(--text-muted); text-decoration: none;">Dashboard</a>
</nav>
</div> </div>
<div> <div>
<span>POSITION: /home/river/services/grafana.md</span> <span style="color: var(--text-muted);">HOST: pve-node02.lan [10GbE]</span>
</div> </div>
</header> </header>
@@ -225,13 +237,22 @@
<div class="tree-view"> <div class="tree-view">
<div class="tree-folder">▾ /services/</div> <div class="tree-folder">▾ /services/</div>
<div class="tree-item active" onclick="selectItem(this, 'grafana')">grafana.md <span>[SVC]</span></div> <div class="tree-item active" onclick="selectItem(this, 'traefik')">traefik.md <span>[SVC]</span></div>
<div class="tree-item" onclick="selectItem(this, 'vault')">vault.md <span>[SVC]</span></div> <div class="tree-item" onclick="selectItem(this, 'truenas')">truenas.md <span>[SVC]</span></div>
<div class="tree-item" onclick="selectItem(this, 'wireguard')">wireguard.md <span>[SVC]</span></div> <div class="tree-item" onclick="selectItem(this, 'vaultwarden')">vaultwarden.md <span>[SVC]</span></div>
<div class="tree-item" onclick="selectItem(this, 'forgejo')">forgejo.md <span>[SVC]</span></div>
<div class="tree-item" onclick="selectItem(this, 'cyberchef')">cyberchef.md <span>[SVC]</span></div>
<div class="tree-folder">▾ /notes/</div> <div class="tree-folder">▾ /notes/</div>
<div class="tree-item" onclick="selectItem(this, 'traefik-note')">traefik-mtls.md <span>[BLOG]</span></div> <div class="tree-item" onclick="selectItem(this, 'spi-flash')">spi-flash.md <span>[BLOG]</span></div>
<div class="tree-item" onclick="selectItem(this, 'ctf-note')">defcon-ctf.md <span>[BLOG]</span></div> <div class="tree-item" onclick="selectItem(this, 'ha-traefik')">ha-traefik.md <span>[BLOG]</span></div>
<div class="tree-item" onclick="selectItem(this, 'posix-sh')">posix-sh.md <span>[BLOG]</span></div>
<div class="tree-item" onclick="selectItem(this, 'ctf-heap')">ctf-heap.md <span>[BLOG]</span></div>
<div class="tree-folder">▾ /modules/</div>
<div class="tree-item" onclick="selectItem(this, 'shell-parser')">shell-parser.lua <span>[DEV]</span></div>
<div class="tree-item" onclick="selectItem(this, 'mesh-builder')">wireguard-mesh.py <span>[DEV]</span></div>
<div class="tree-item" onclick="selectItem(this, 'zero-logger')">zero-logger.go <span>[DEV]</span></div>
<div class="tree-folder">▾ /resume/</div> <div class="tree-folder">▾ /resume/</div>
<div class="tree-item" onclick="selectItem(this, 'whoami')">whoami.md <span>[CV]</span></div> <div class="tree-item" onclick="selectItem(this, 'whoami')">whoami.md <span>[CV]</span></div>
@@ -253,31 +274,34 @@
<main class="main-pane"> <main class="main-pane">
<div class="doc-container" id="doc-view"> <div class="doc-container" id="doc-view">
<!-- Default Content: Grafana Service --> <!-- Default Content: Traefik Proxy -->
<div class="doc-path">file:///home/river/services/grafana.md</div> <div class="doc-path">file:///home/river/services/traefik.md</div>
<h1 class="doc-title">Service: grafana.homelab</h1> <h1 class="doc-title">Service: Traefik Proxy (v3.1)</h1>
<p> <p>
Primary telemetry and Prometheus monitoring dashboard. Aggregates host node resource usage, Docker container stats, and Traefik router throughput. Edge HTTP reverse proxy and load balancer with dynamic Docker provider discovery and ACME Let's Encrypt TLS wildcard certificate management.
</p> </p>
<div class="code-block"> <div class="code-block">
<div class="code-header">docker-compose.yml</div> <div class="code-header">traefik.yml</div>
<div class="code-content"> <div class="code-content">
<span style="color: var(--accent-cyan);">services:</span> entryPoints:
<span style="color: var(--accent-cyan);">grafana:</span> web:
image: grafana/grafana-oss:latest address: ":80"
container_name: homelab_grafana websecure:
ports: address: ":443"
- "3000:3000" certificatesResolvers:
restart: unless-stopped cloudflare:
acme:
dnsChallenge:
provider: cloudflare
</div> </div>
</div> </div>
<div class="tag-cluster"> <div class="tag-cluster">
<span>[#homelab]</span> <span>[#core]</span>
<span>[#prometheus]</span> <span>[#docker-traefik]</span>
<span>[#telemetry]</span> <span>[PORT: 443/tcp]</span>
<span>[STATUS: ONLINE]</span> <span>[STATUS: ONLINE]</span>
</div> </div>
@@ -289,79 +313,135 @@
<!-- Bottom Status Bar --> <!-- Bottom Status Bar -->
<footer class="status-bar"> <footer class="status-bar">
<div>UTF-8 | LF | POSIX Shell</div> <div>UTF-8 | LF | POSIX Shell</div>
<div>Use Arrow Keys / Mouse to inspect workspace items</div> <div>River Rooks • Canonical Content Dataset Compliant</div>
</footer> </footer>
<script> <script>
const docs = { const docs = {
'grafana': ` 'traefik': `
<div class="doc-path">file:///home/river/services/grafana.md</div> <div class="doc-path">file:///home/river/services/traefik.md</div>
<h1 class="doc-title">Service: grafana.homelab</h1> <h1 class="doc-title">Service: Traefik Proxy (v3.1)</h1>
<p>Primary telemetry and Prometheus monitoring dashboard. Aggregates host node resource usage, Docker container stats, and Traefik router throughput.</p> <p>Edge HTTP reverse proxy and load balancer with dynamic Docker provider discovery and ACME Let's Encrypt TLS wildcard certificate management.</p>
<div class="code-block"> <div class="code-block">
<div class="code-header">docker-compose.yml</div> <div class="code-header">traefik.yml</div>
<div class="code-content"> <div class="code-content">
<span style="color: var(--accent-cyan);">services:</span> entryPoints:
<span style="color: var(--accent-cyan);">grafana:</span> web:
image: grafana/grafana-oss:latest address: ":80"
container_name: homelab_grafana websecure:
ports: address: ":443"
- "3000:3000" certificatesResolvers:
restart: unless-stopped cloudflare:
acme:
dnsChallenge:
provider: cloudflare
</div> </div>
</div> </div>
<div class="tag-cluster"><span>[#homelab]</span><span>[#prometheus]</span><span>[#telemetry]</span><span>[STATUS: ONLINE]</span></div> <div class="tag-cluster"><span>[#core]</span><span>[#docker-traefik]</span><span>[PORT: 443/tcp]</span><span>[STATUS: ONLINE]</span></div>
`, `,
'vault': ` 'truenas': `
<div class="doc-path">file:///home/river/services/vault.md</div> <div class="doc-path">file:///home/river/services/truenas.md</div>
<h1 class="doc-title">Service: vault.homelab</h1> <h1 class="doc-title">Service: TrueNAS SCALE</h1>
<p>HashiCorp Vault cluster managing secrets, SSH keys, internal PKI certificates, and mTLS auto-renewal for homelab nodes.</p> <p>Primary storage pool managing 48TB ZFS RaidZ2 array across 6x 16TB enterprise SAS drives with daily snapshots and NFS/SMB exports.</p>
<div class="tag-cluster"><span>[#storage]</span><span>[#zfs]</span><span>[PORT: NFS / SMB]</span><span>[STATUS: ONLINE]</span></div>
`,
'vaultwarden': `
<div class="doc-path">file:///home/river/services/vaultwarden.md</div>
<h1 class="doc-title">Service: Vaultwarden Secrets</h1>
<p>Lightweight Rust implementation of the Bitwarden API hosting encrypted credentials, SSH keys, and TOTP authentication tokens.</p>
<div class="tag-cluster"><span>[#secrets]</span><span>[#security]</span><span>[PORT: 443/tcp]</span><span>[STATUS: 2FA/AUTH]</span></div>
`,
'forgejo': `
<div class="doc-path">file:///home/river/services/forgejo.md</div>
<h1 class="doc-title">Service: Forgejo Git Forge</h1>
<p>Self-hosted Git forge hosting homelab infrastructure-as-code repos, Ansible playbooks, dotfiles, and CTF binary writeup scripts.</p>
<div class="tag-cluster"><span>[#dev-git]</span><span>[#git]</span><span>[PORT: 3000/tcp]</span><span>[STATUS: PUBLIC]</span></div>
`,
'cyberchef': `
<div class="doc-path">file:///home/river/services/cyberchef.md</div>
<h1 class="doc-title">Service: CyberChef Workbench</h1>
<p>Web-based data transformation Swiss Army knife for hex decoding, Base64 operations, regex extraction, and CTF payload analysis.</p>
<div class="tag-cluster"><span>[#security-tool]</span><span>[#crypto]</span><span>[STATUS: PUBLIC]</span></div>
`,
'spi-flash': `
<div class="doc-path">file:///home/river/notes/iot-firmware-spi-extraction.md</div>
<h1 class="doc-title">Reverse Engineering IoT Firmware: SPI Flash Extraction</h1>
<p>Physical hardware-level dumping of SPI flash memory chips using Bus Pirate and flashrom to bypass locked bootloaders.</p>
<div class="code-block"> <div class="code-block">
<div class="code-header">vault-config.hcl</div> <div class="code-header">extract_firmware.sh</div>
<div class="code-content"> <div class="code-content">
storage "file" { path = "/vault/file" } flashrom -p buspirate_spi:dev=/dev/ttyUSB0,spispeed=1M -r firmware_dump.bin
listener "tcp" { address = "0.0.0.0:8200" tls_disable = 0 } md5sum firmware_dump.bin
ui = true
</div> </div>
</div> </div>
<div class="tag-cluster"><span>[#vault]</span><span>[#security]</span><span>[#mtls]</span><span>[STATUS: ONLINE]</span></div> <div class="tag-cluster"><span>[#firmware]</span><span>[#hardware]</span><span>[#security]</span><span>[DATE: 2026-07-20]</span></div>
`, `,
'wireguard': ` 'ha-traefik': `
<div class="doc-path">file:///home/river/services/wireguard.md</div> <div class="doc-path">file:///home/river/notes/ha-traefik-docker.md</div>
<h1 class="doc-title">Service: wireguard.homelab</h1> <h1 class="doc-title">Building a High-Availability Traefik Router</h1>
<p>Encrypted WireGuard mesh network ingress connecting offsite cloud VPS nodes directly to the internal homelab network.</p> <p>Architecting automated TLS wildcard certificate propagation and dynamic Docker container discovery failover routing.</p>
<div class="tag-cluster"><span>[#networking]</span><span>[#wireguard]</span><span>[#vpn]</span><span>[STATUS: INTERNAL]</span></div> <div class="tag-cluster"><span>[#homelab]</span><span>[#docker-traefik]</span><span>[DATE: 2026-07-15]</span></div>
`, `,
'traefik-note': ` 'posix-sh': `
<div class="doc-path">file:///home/river/notes/traefik-mtls.md</div> <div class="doc-path">file:///home/river/notes/posix-sh-vs-bash.md</div>
<h1 class="doc-title">Hardening Traefik Ingress with HashiCorp Vault mTLS</h1> <h1 class="doc-title">POSIX sh vs. Bash: Portability in Modern Scripts</h1>
<p>Technical write-up detailing zero-trust certificate auto-renewal pipelines using Vault PKI backend and Traefik dynamic configuration reloads.</p> <p>Eliminating bashisms and adhering to IEEE Std 1003.1 for high-speed bootstrapping in Alpine and embedded targets.</p>
<div class="tag-cluster"><span>[#blog]</span><span>[#traefik]</span><span>[#security]</span><span>[DATE: 2026-08-02]</span></div> <div class="tag-cluster"><span>[#posix-sh]</span><span>[#unix]</span><span>[DATE: 2026-07-10]</span></div>
`, `,
'ctf-note': ` 'ctf-heap': `
<div class="doc-path">file:///home/river/notes/defcon-ctf.md</div> <div class="doc-path">file:///home/river/notes/ctf-heap-glibc-2-35.md</div>
<h1 class="doc-title">DEFCON CTF Qualifier: Memory Corruption Write-Up</h1> <h1 class="doc-title">CTF Write-up: Heap Exploitation in glibc 2.35</h1>
<p>Deep-dive analysis on exploitation techniques involving glibc malloc heap metadata corruption and arbitrary write primitives.</p> <p>Tcache safe-linking bypass and House of Apple file structure hijacking primitives for arbitrary code execution.</p>
<div class="tag-cluster"><span>[#ctf]</span><span>[#binary]</span><span>[#pwn]</span><span>[DATE: 2026-07-18]</span></div> <div class="tag-cluster"><span>[#ctf]</span><span>[#binary-exploitation]</span><span>[DATE: 2026-06-28]</span></div>
`,
'shell-parser': `
<div class="doc-path">file:///home/river/modules/posix-shell-parser.lua</div>
<h1 class="doc-title">Module: Custom POSIX Shell Parser (v1.2.0)</h1>
<p>Zero-allocation Lexer and AST parser written in Lua for real-time syntax coloring in modal editors.</p>
<div class="code-block">
<div class="code-header">lexer.lua</div>
<div class="code-content">
local function tokenize(src)
local tokens = {}
for pos, char in ipairs(src) do
if char == ";" or char == "|" then table.insert(tokens, { type = "OPERATOR", value = char }) end
end
return tokens
end
</div>
</div>
<div class="tag-cluster"><span>[#lua]</span><span>[#ast-parser]</span><span>[VERSION: v1.2.0]</span></div>
`,
'mesh-builder': `
<div class="doc-path">file:///home/river/modules/wireguard-mesh.py</div>
<h1 class="doc-title">Module: WireGuard Mesh Topology Builder (v0.8.4)</h1>
<p>Matrix topology generator creating atomic configuration files and key pairings across multi-cloud and homelab nodes.</p>
<div class="tag-cluster"><span>[#networking]</span><span>[#wireguard]</span><span>[VERSION: v0.8.4]</span></div>
`,
'zero-logger': `
<div class="doc-path">file:///home/river/modules/zero-alloc-logger.go</div>
<h1 class="doc-title">Module: Zero-Allocation Logger (Go v2.1.1)</h1>
<p>High-throughput structured JSON logger utilizing sync.Pool byte buffers to eliminate heap allocations (>500k ops/sec).</p>
<div class="tag-cluster"><span>[#golang]</span><span>[#performance]</span><span>[VERSION: v2.1.1]</span></div>
`, `,
'whoami': ` 'whoami': `
<div class="doc-path">file:///home/river/resume/whoami.md</div> <div class="doc-path">file:///home/river/resume/whoami.md</div>
<h1 class="doc-title">River Rooks - Biography</h1> <h1 class="doc-title">River Rooks - Systems Architecture &amp; Cybersecurity</h1>
<p>Cybersecurity student at the University of Alabama College of Engineering, focusing on network forensics, self-hosted infrastructure, and hardened kernel configs.</p> <p>Cybersecurity student at the University of Alabama College of Engineering, focusing on network forensics, self-hosted infrastructure, and bare-metal virtualization.</p>
<div class="tag-cluster"><span>[#cs]</span><span>[#cybersecurity]</span><span>[#resume]</span></div> <div class="tag-cluster"><span>[#cybersecurity]</span><span>[#systems]</span><span>[UA COLLEGE OF ENGINEERING]</span></div>
`, `,
'stack': ` 'stack': `
<div class="doc-path">file:///home/river/resume/active_stack.conf</div> <div class="doc-path">file:///home/river/resume/active_stack.conf</div>
<h1 class="doc-title">Active Engineering Stack</h1> <h1 class="doc-title">Active Engineering Stack</h1>
<p>System configuration & tech stack specifications:</p>
<div class="code-block"> <div class="code-block">
<div class="code-header">stack.conf</div> <div class="code-header">stack.conf</div>
<div class="code-content"> <div class="code-content">
LANGUAGES="POSIX sh, Python, C, Lua" DOMAINS="Network Forensics, Self-Hosted Infrastructure, Linux Kernel Hardening"
TOOLS="Docker, Traefik, WireGuard, HashiCorp Vault, Neovim" LANGUAGES="POSIX sh, Python, Go, Rust, Lua, ARM Assembly"
OS="Arch Linux / POSIX Compliance" STACK="Traefik v3, WireGuard, Proxmox VE, TrueNAS SCALE, Neovim"
</div> </div>
</div> </div>
<div class="tag-cluster"><span>[#arch-linux]</span><span>[#neovim]</span><span>[#wireguard]</span></div>
` `
}; };