summaryrefslogtreecommitdiff
path: root/about/showcase/hypr/image-1.svg
diff options
context:
space:
mode:
Diffstat (limited to 'about/showcase/hypr/image-1.svg')
-rw-r--r--about/showcase/hypr/image-1.svg425
1 files changed, 425 insertions, 0 deletions
diff --git a/about/showcase/hypr/image-1.svg b/about/showcase/hypr/image-1.svg
new file mode 100644
index 00000000..6bf71b4d
--- /dev/null
+++ b/about/showcase/hypr/image-1.svg
@@ -0,0 +1,425 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1536 512" width="1536" height="512">
+ <title>Hyperstack · Pi · FreeBSD Logo</title>
+ <defs>
+ <!-- Background gradient -->
+ <linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
+ <stop offset="0%" style="stop-color:#0d1117"/>
+ <stop offset="100%" style="stop-color:#161b22"/>
+ </linearGradient>
+ <!-- Blue: Hyperstack / GPU -->
+ <linearGradient id="gpuGrad" x1="0%" y1="0%" x2="100%" y2="100%">
+ <stop offset="0%" style="stop-color:#1f6feb"/>
+ <stop offset="100%" style="stop-color:#388bfd"/>
+ </linearGradient>
+ <!-- Pi symbol gradient -->
+ <linearGradient id="piGrad" x1="0%" y1="0%" x2="0%" y2="100%">
+ <stop offset="0%" style="stop-color:#58a6ff"/>
+ <stop offset="100%" style="stop-color:#1f6feb"/>
+ </linearGradient>
+ <!-- Red: FreeBSD daemon horns -->
+ <linearGradient id="bsdGrad" x1="0%" y1="0%" x2="100%" y2="0%">
+ <stop offset="0%" style="stop-color:#ff6b6b"/>
+ <stop offset="100%" style="stop-color:#ff4444"/>
+ </linearGradient>
+ <!-- Purple: AI / neural network -->
+ <linearGradient id="aiGrad" x1="0%" y1="0%" x2="100%" y2="100%">
+ <stop offset="0%" style="stop-color:#a78bfa"/>
+ <stop offset="100%" style="stop-color:#7c3aed"/>
+ </linearGradient>
+ <!-- Green: tmux status bar -->
+ <linearGradient id="tmuxBar" x1="0%" y1="0%" x2="100%" y2="0%">
+ <stop offset="0%" style="stop-color:#1a2d1a"/>
+ <stop offset="100%" style="stop-color:#0d1f0d"/>
+ </linearGradient>
+
+ <!-- Glow for Pi symbol -->
+ <filter id="glow" x="-25%" y="-25%" width="150%" height="150%">
+ <feGaussianBlur in="SourceGraphic" stdDeviation="7" result="blur"/>
+ <feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
+ </filter>
+ <!-- Glow for BSD horns -->
+ <filter id="hornGlow" x="-40%" y="-40%" width="180%" height="180%">
+ <feGaussianBlur in="SourceGraphic" stdDeviation="5" result="blur"/>
+ <feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
+ </filter>
+ <!-- Glow for AI nodes -->
+ <filter id="aiGlow" x="-60%" y="-60%" width="220%" height="220%">
+ <feGaussianBlur in="SourceGraphic" stdDeviation="6" result="blur"/>
+ <feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
+ </filter>
+ <!-- Soft glow for GPU chip -->
+ <filter id="chipGlow" x="-20%" y="-20%" width="140%" height="140%">
+ <feGaussianBlur in="SourceGraphic" stdDeviation="4" result="blur"/>
+ <feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
+ </filter>
+ </defs>
+
+ <!-- ═══════════════════════════════════════════════════════════
+ BACKGROUND
+ ═══════════════════════════════════════════════════════════ -->
+ <rect width="1536" height="512" rx="40" fill="url(#bg)"/>
+
+ <!-- Full-width GPU circuit grid background texture -->
+ <g opacity="0.10" stroke="#388bfd" stroke-width="1">
+ <!-- Horizontals -->
+ <line x1="0" y1="64" x2="1536" y2="64"/>
+ <line x1="0" y1="128" x2="1536" y2="128"/>
+ <line x1="0" y1="192" x2="1536" y2="192"/>
+ <line x1="0" y1="256" x2="1536" y2="256"/>
+ <line x1="0" y1="320" x2="1536" y2="320"/>
+ <line x1="0" y1="384" x2="1536" y2="384"/>
+ <line x1="0" y1="448" x2="1536" y2="448"/>
+ <!-- Verticals -->
+ <line x1="64" y1="0" x2="64" y2="512"/>
+ <line x1="128" y1="0" x2="128" y2="512"/>
+ <line x1="192" y1="0" x2="192" y2="512"/>
+ <line x1="256" y1="0" x2="256" y2="512"/>
+ <line x1="320" y1="0" x2="320" y2="512"/>
+ <line x1="384" y1="0" x2="384" y2="512"/>
+ <line x1="448" y1="0" x2="448" y2="512"/>
+ <line x1="512" y1="0" x2="512" y2="512"/>
+ <line x1="576" y1="0" x2="576" y2="512"/>
+ <line x1="640" y1="0" x2="640" y2="512"/>
+ <line x1="704" y1="0" x2="704" y2="512"/>
+ <line x1="768" y1="0" x2="768" y2="512"/>
+ <line x1="832" y1="0" x2="832" y2="512"/>
+ <line x1="896" y1="0" x2="896" y2="512"/>
+ <line x1="960" y1="0" x2="960" y2="512"/>
+ <line x1="1024" y1="0" x2="1024" y2="512"/>
+ <line x1="1088" y1="0" x2="1088" y2="512"/>
+ <line x1="1152" y1="0" x2="1152" y2="512"/>
+ <line x1="1216" y1="0" x2="1216" y2="512"/>
+ <line x1="1280" y1="0" x2="1280" y2="512"/>
+ <line x1="1344" y1="0" x2="1344" y2="512"/>
+ <line x1="1408" y1="0" x2="1408" y2="512"/>
+ <line x1="1472" y1="0" x2="1472" y2="512"/>
+ </g>
+
+ <!-- ═══════════════════════════════════════════════════════════
+ LEFT PANEL: AI Neural Network + GPU A100 chip
+ x: 0–460
+ ═══════════════════════════════════════════════════════════ -->
+
+ <!-- GPU A100 chip outline (left, centred vertically) -->
+ <!-- Chip body -->
+ <rect x="48" y="156" width="180" height="200" rx="10"
+ fill="none" stroke="#1f6feb" stroke-width="2" opacity="0.55"
+ filter="url(#chipGlow)"/>
+ <!-- Chip inner die -->
+ <rect x="74" y="182" width="128" height="148" rx="6"
+ fill="#1f6feb" fill-opacity="0.06" stroke="#388bfd" stroke-width="1" opacity="0.7"/>
+ <!-- Die grid pattern inside chip -->
+ <g stroke="#388bfd" stroke-width="0.5" opacity="0.35">
+ <line x1="74" y1="214" x2="202" y2="214"/>
+ <line x1="74" y1="246" x2="202" y2="246"/>
+ <line x1="74" y1="278" x2="202" y2="278"/>
+ <line x1="74" y1="310" x2="202" y2="310"/>
+ <line x1="106" y1="182" x2="106" y2="330"/>
+ <line x1="138" y1="182" x2="138" y2="330"/>
+ <line x1="170" y1="182" x2="170" y2="330"/>
+ </g>
+ <!-- Chip pins — left side -->
+ <g stroke="#388bfd" stroke-width="2" opacity="0.6">
+ <line x1="24" y1="180" x2="48" y2="180"/>
+ <line x1="24" y1="204" x2="48" y2="204"/>
+ <line x1="24" y1="228" x2="48" y2="228"/>
+ <line x1="24" y1="252" x2="48" y2="252"/>
+ <line x1="24" y1="276" x2="48" y2="276"/>
+ <line x1="24" y1="300" x2="48" y2="300"/>
+ <line x1="24" y1="324" x2="48" y2="324"/>
+ <line x1="24" y1="348" x2="48" y2="348"/>
+ </g>
+ <!-- Chip pins — right side -->
+ <g stroke="#388bfd" stroke-width="2" opacity="0.6">
+ <line x1="228" y1="180" x2="252" y2="180"/>
+ <line x1="228" y1="204" x2="252" y2="204"/>
+ <line x1="228" y1="228" x2="252" y2="228"/>
+ <line x1="228" y1="252" x2="252" y2="252"/>
+ <line x1="228" y1="276" x2="252" y2="276"/>
+ <line x1="228" y1="300" x2="252" y2="300"/>
+ <line x1="228" y1="324" x2="252" y2="324"/>
+ <line x1="228" y1="348" x2="252" y2="348"/>
+ </g>
+ <!-- Chip pins — top side -->
+ <g stroke="#388bfd" stroke-width="2" opacity="0.6">
+ <line x1="80" y1="132" x2="80" y2="156"/>
+ <line x1="106" y1="132" x2="106" y2="156"/>
+ <line x1="132" y1="132" x2="132" y2="156"/>
+ <line x1="158" y1="132" x2="158" y2="156"/>
+ <line x1="184" y1="132" x2="184" y2="156"/>
+ <line x1="210" y1="132" x2="210" y2="156"/>
+ </g>
+ <!-- Chip pins — bottom side -->
+ <g stroke="#388bfd" stroke-width="2" opacity="0.6">
+ <line x1="80" y1="356" x2="80" y2="380"/>
+ <line x1="106" y1="356" x2="106" y2="380"/>
+ <line x1="132" y1="356" x2="132" y2="380"/>
+ <line x1="158" y1="356" x2="158" y2="380"/>
+ <line x1="184" y1="356" x2="184" y2="380"/>
+ <line x1="210" y1="356" x2="210" y2="380"/>
+ </g>
+ <!-- A100 label inside chip -->
+ <text x="138" y="262"
+ text-anchor="middle"
+ font-family="'SF Mono','Fira Code','Consolas',monospace"
+ font-size="22" font-weight="700" letter-spacing="1"
+ fill="#388bfd" opacity="0.8">A100</text>
+ <text x="138" y="284"
+ text-anchor="middle"
+ font-family="'SF Mono','Fira Code','Consolas',monospace"
+ font-size="10" font-weight="400" letter-spacing="1"
+ fill="#1f6feb" opacity="0.6">80GB · PCIe</text>
+
+ <!-- Neural network nodes (AI) — right of the chip, bridging to center -->
+ <!-- Layer 1 (input) nodes — x≈290 -->
+ <g filter="url(#aiGlow)">
+ <circle cx="295" cy="160" r="10" fill="url(#aiGrad)" opacity="0.85"/>
+ <circle cx="295" cy="220" r="10" fill="url(#aiGrad)" opacity="0.85"/>
+ <circle cx="295" cy="280" r="10" fill="url(#aiGrad)" opacity="0.85"/>
+ <circle cx="295" cy="340" r="10" fill="url(#aiGrad)" opacity="0.85"/>
+ </g>
+ <!-- Layer 2 (hidden) nodes — x≈360 -->
+ <g filter="url(#aiGlow)">
+ <circle cx="370" cy="140" r="12" fill="url(#aiGrad)" opacity="0.90"/>
+ <circle cx="370" cy="200" r="12" fill="url(#aiGrad)" opacity="0.90"/>
+ <circle cx="370" cy="260" r="12" fill="url(#aiGrad)" opacity="0.90"/>
+ <circle cx="370" cy="320" r="12" fill="url(#aiGrad)" opacity="0.90"/>
+ <circle cx="370" cy="380" r="12" fill="url(#aiGrad)" opacity="0.90"/>
+ </g>
+ <!-- Layer 3 (output/bridge) nodes — x≈435 -->
+ <g filter="url(#aiGlow)">
+ <circle cx="435" cy="180" r="9" fill="url(#aiGrad)" opacity="0.75"/>
+ <circle cx="435" cy="256" r="9" fill="url(#aiGrad)" opacity="0.75"/>
+ <circle cx="435" cy="332" r="9" fill="url(#aiGrad)" opacity="0.75"/>
+ </g>
+ <!-- Neural connections layer 1 → 2 -->
+ <g stroke="#7c3aed" stroke-width="1" fill="none" opacity="0.28">
+ <line x1="305" y1="160" x2="358" y2="140"/>
+ <line x1="305" y1="160" x2="358" y2="200"/>
+ <line x1="305" y1="160" x2="358" y2="260"/>
+ <line x1="305" y1="220" x2="358" y2="140"/>
+ <line x1="305" y1="220" x2="358" y2="200"/>
+ <line x1="305" y1="220" x2="358" y2="260"/>
+ <line x1="305" y1="220" x2="358" y2="320"/>
+ <line x1="305" y1="280" x2="358" y2="200"/>
+ <line x1="305" y1="280" x2="358" y2="260"/>
+ <line x1="305" y1="280" x2="358" y2="320"/>
+ <line x1="305" y1="280" x2="358" y2="380"/>
+ <line x1="305" y1="340" x2="358" y2="260"/>
+ <line x1="305" y1="340" x2="358" y2="320"/>
+ <line x1="305" y1="340" x2="358" y2="380"/>
+ </g>
+ <!-- Neural connections layer 2 → 3 -->
+ <g stroke="#8b5cf6" stroke-width="1" fill="none" opacity="0.32">
+ <line x1="382" y1="140" x2="426" y2="180"/>
+ <line x1="382" y1="200" x2="426" y2="180"/>
+ <line x1="382" y1="200" x2="426" y2="256"/>
+ <line x1="382" y1="260" x2="426" y2="180"/>
+ <line x1="382" y1="260" x2="426" y2="256"/>
+ <line x1="382" y1="260" x2="426" y2="332"/>
+ <line x1="382" y1="320" x2="426" y2="256"/>
+ <line x1="382" y1="320" x2="426" y2="332"/>
+ <line x1="382" y1="380" x2="426" y2="332"/>
+ </g>
+ <!-- Chip → neural network trace -->
+ <g stroke="#388bfd" stroke-width="1.5" fill="none" opacity="0.35">
+ <polyline points="252,252 275,252 275,220 285,220"/>
+ <polyline points="252,300 275,300 275,340 285,340"/>
+ </g>
+
+ <!-- "AI" label -->
+ <text x="138" y="110"
+ text-anchor="middle"
+ font-family="'SF Mono','Fira Code','Consolas',monospace"
+ font-size="11" font-weight="400" letter-spacing="2"
+ fill="#7c3aed" opacity="0.6">NEURAL · AI</text>
+
+ <!-- ═══════════════════════════════════════════════════════════
+ CENTER PANEL: π symbol with BSD daemon horns
+ Centred at x=768
+ ═══════════════════════════════════════════════════════════ -->
+
+ <!-- Stronger GPU grid in center zone only -->
+ <g opacity="0.18" stroke="#388bfd" stroke-width="1">
+ <line x1="512" y1="128" x2="1024" y2="128"/>
+ <line x1="512" y1="192" x2="1024" y2="192"/>
+ <line x1="512" y1="256" x2="1024" y2="256"/>
+ <line x1="512" y1="320" x2="1024" y2="320"/>
+ <line x1="512" y1="384" x2="1024" y2="384"/>
+ <line x1="576" y1="80" x2="576" y2="450"/>
+ <line x1="640" y1="80" x2="640" y2="450"/>
+ <line x1="704" y1="80" x2="704" y2="450"/>
+ <line x1="768" y1="80" x2="768" y2="450"/>
+ <line x1="832" y1="80" x2="832" y2="450"/>
+ <line x1="896" y1="80" x2="896" y2="450"/>
+ <line x1="960" y1="80" x2="960" y2="450"/>
+ </g>
+ <!-- Circuit nodes in center -->
+ <g fill="#1f6feb" opacity="0.38">
+ <circle cx="576" cy="128" r="4"/>
+ <circle cx="640" cy="192" r="4"/>
+ <circle cx="896" cy="128" r="4"/>
+ <circle cx="960" cy="192" r="4"/>
+ <circle cx="576" cy="384" r="4"/>
+ <circle cx="640" cy="320" r="4"/>
+ <circle cx="896" cy="384" r="4"/>
+ <circle cx="960" cy="320" r="4"/>
+ </g>
+ <!-- PCB traces in center zone -->
+ <g stroke="#1f6feb" stroke-width="2" fill="none" opacity="0.25">
+ <polyline points="576,128 576,192 640,192"/>
+ <polyline points="960,128 960,192 896,192"/>
+ <polyline points="576,384 576,320 640,320"/>
+ <polyline points="960,384 960,320 896,320"/>
+ </g>
+
+ <!-- Circular glow ring behind π -->
+ <ellipse cx="768" cy="300" rx="185" ry="165"
+ fill="none" stroke="#1f6feb" stroke-width="1.5" opacity="0.13"/>
+ <ellipse cx="768" cy="300" rx="210" ry="188"
+ fill="none" stroke="#1f6feb" stroke-width="0.5" opacity="0.07"/>
+
+ <!--
+ FreeBSD daemon horns — above the π crossbar, symmetric bezier curves.
+ Base at x≈718/818 (centred at 768).
+ -->
+ <!-- Left horn -->
+ <path d="M 718 172
+ C 716 152 708 132 696 114
+ C 686 98 668 90 673 100
+ C 678 110 686 126 688 144
+ C 690 158 698 170 708 174 Z"
+ fill="url(#bsdGrad)" filter="url(#hornGlow)"/>
+ <path d="M 716 168 C 710 148 700 128 692 112 C 686 100 678 96 681 106"
+ stroke="#ffaaaa" stroke-width="2" fill="none" opacity="0.4"/>
+ <!-- Right horn -->
+ <path d="M 818 172
+ C 820 152 828 132 840 114
+ C 850 98 868 90 863 100
+ C 858 110 850 126 848 144
+ C 846 158 838 170 828 174 Z"
+ fill="url(#bsdGrad)" filter="url(#hornGlow)"/>
+ <path d="M 820 168 C 826 148 836 128 844 112 C 850 100 858 96 855 106"
+ stroke="#ffaaaa" stroke-width="2" fill="none" opacity="0.4"/>
+
+ <!--
+ π (Pi) symbol — centred at x=768.
+ Crossbar: y=188–210. Legs extend to y≈400.
+ -->
+ <g filter="url(#glow)">
+ <!-- Crossbar -->
+ <rect x="628" y="188" width="280" height="24" rx="12" fill="url(#piGrad)"/>
+ <!-- Left leg -->
+ <path d="M 666 212
+ C 666 272 656 328 642 366
+ C 634 386 630 400 638 410
+ C 646 420 660 420 670 410
+ C 678 402 680 386 684 366
+ C 696 308 702 260 702 212 Z"
+ fill="url(#piGrad)"/>
+ <!-- Right leg — symmetric -->
+ <path d="M 870 212
+ C 870 272 880 328 894 366
+ C 902 386 906 400 898 410
+ C 890 420 876 420 866 410
+ C 858 402 856 386 852 366
+ C 840 308 834 260 834 212 Z"
+ fill="url(#piGrad)"/>
+ </g>
+
+ <!-- ═══════════════════════════════════════════════════════════
+ RIGHT PANEL: tmux terminal window
+ x: 1086–1500
+ ═══════════════════════════════════════════════════════════ -->
+
+ <!-- Terminal window frame -->
+ <rect x="1096" y="80" width="400" height="352" rx="10"
+ fill="#0d1117" stroke="#30363d" stroke-width="1.5" opacity="0.95"/>
+
+ <!-- Title bar -->
+ <rect x="1096" y="80" width="400" height="32" rx="10"
+ fill="#161b22"/>
+ <rect x="1096" y="96" width="400" height="16" fill="#161b22"/>
+ <!-- Traffic-light dots -->
+ <circle cx="1118" cy="96" r="6" fill="#ff5f56" opacity="0.9"/>
+ <circle cx="1138" cy="96" r="6" fill="#ffbd2e" opacity="0.9"/>
+ <circle cx="1158" cy="96" r="6" fill="#27c93f" opacity="0.9"/>
+ <!-- Title text -->
+ <text x="1296" y="101"
+ text-anchor="middle"
+ font-family="'SF Mono','Fira Code','Consolas',monospace"
+ font-size="11" fill="#6e7681">hyperstack.wg1 — zsh</text>
+
+ <!-- Terminal content area -->
+ <rect x="1096" y="112" width="400" height="284" fill="#0d1117" opacity="0.95"/>
+
+ <!-- Terminal lines — simulated shell session -->
+ <g font-family="'SF Mono','Fira Code','Consolas',monospace" font-size="11" fill="#c9d1d9">
+ <!-- Prompt + command 1 -->
+ <text x="1112" y="140">
+ <tspan fill="#3fb950">❯</tspan>
+ <tspan fill="#8b949e"> ruby hyperstack.rb create-both</tspan>
+ </text>
+ <text x="1112" y="158" fill="#6e7681"> Creating VM hyperstack1 (A100)...</text>
+ <text x="1112" y="174" fill="#6e7681"> Creating VM hyperstack2 (A100)...</text>
+ <text x="1112" y="190" fill="#3fb950"> vllm-ready ✓ wireguard-ok ✓</text>
+
+ <!-- Prompt + command 2 -->
+ <text x="1112" y="214">
+ <tspan fill="#3fb950">❯</tspan>
+ <tspan fill="#8b949e"> pi --model hyperstack1/nemotron</tspan>
+ </text>
+ <text x="1112" y="230" fill="#6e7681"> Connecting to hyperstack1.wg1…</text>
+ <text x="1112" y="246" fill="#58a6ff"> » Hello! Ready to code with you.</text>
+
+ <!-- Prompt + command 3 -->
+ <text x="1112" y="270">
+ <tspan fill="#3fb950">❯</tspan>
+ <tspan fill="#8b949e"> pi --model hyperstack2/qwen3</tspan>
+ </text>
+ <text x="1112" y="286" fill="#6e7681"> Connecting to hyperstack2.wg1…</text>
+ <text x="1112" y="302" fill="#58a6ff"> » I am Qwen3-Coder, let's build!</text>
+
+ <!-- Blinking cursor -->
+ <rect x="1112" y="322" width="8" height="14" fill="#58a6ff" opacity="0.8"/>
+ </g>
+
+ <!-- tmux status bar at bottom of terminal -->
+ <rect x="1096" y="396" width="400" height="24" rx="0" fill="url(#tmuxBar)"/>
+ <rect x="1096" y="408" width="400" height="12" fill="url(#tmuxBar)"/>
+ <rect x="1096" y="396" width="400" height="24"
+ fill="none" stroke="#30363d" stroke-width="0.5" opacity="0.5"/>
+
+ <!-- tmux status bar text -->
+ <!-- Left: session + windows -->
+ <rect x="1096" y="396" width="68" height="24" fill="#3fb950" opacity="0.18"/>
+ <text x="1104" y="412"
+ font-family="'SF Mono','Fira Code','Consolas',monospace"
+ font-size="10" font-weight="600" fill="#3fb950">[hyperstack]</text>
+ <text x="1170" y="412"
+ font-family="'SF Mono','Fira Code','Consolas',monospace"
+ font-size="10" fill="#6e7681">0:pi* 1:ssh 2:logs</text>
+ <!-- Right: clock -->
+ <text x="1486" y="412"
+ text-anchor="end"
+ font-family="'SF Mono','Fira Code','Consolas',monospace"
+ font-size="10" fill="#6e7681">21:03</text>
+
+ <!-- Terminal window bottom rounded finish -->
+ <rect x="1096" y="420" width="400" height="12" rx="10"
+ fill="#161b22" stroke="#30363d" stroke-width="1.5" opacity="0.6"/>
+
+ <!-- ═══════════════════════════════════════════════════════════
+ BOTTOM LABELS — full width
+ ═══════════════════════════════════════════════════════════ -->
+ <text x="768" y="470"
+ text-anchor="middle"
+ font-family="'SF Mono','Fira Code','Consolas',monospace"
+ font-size="22" font-weight="700" letter-spacing="6"
+ fill="#8b949e">HYPERSTACK</text>
+ <text x="768" y="494"
+ text-anchor="middle"
+ font-family="'SF Mono','Fira Code','Consolas',monospace"
+ font-size="11" font-weight="400" letter-spacing="3"
+ fill="#6e7681">GPU · PI.DEV · FREEBSD · AI · TMUX</text>
+</svg>