From 3d9bde0d8c21b5f2264a3076ebd787334a261baf Mon Sep 17 00:00:00 2001 From: Gerard Louis Recinto Date: Mon, 5 Oct 2026 10:37:24 -0700 Subject: [PATCH 1/5] add the short video under the intro, start the wasm download earlier, halve allocations in blocklog Stats --- demo/index.html | 17 +++++++++++++++++ tools/blocklog/blocklog.go | 33 ++++++++++++++++++++++----------- 2 files changed, 39 insertions(+), 11 deletions(-) diff --git a/demo/index.html b/demo/index.html index 8b8330c5f..7e583e325 100644 --- a/demo/index.html +++ b/demo/index.html @@ -25,6 +25,11 @@ + + + + + - + + @@ -430,22 +393,6 @@ - -
-
-
-
- -
-

Booting Embedded Go WASM Kernel

-

- Compiling B-Tree transaction log, vector index, and ACID isolation manager into browser memory sandbox... -

-
-
-
-
-
@@ -1030,7 +977,24 @@

Zero Server Roundtrips

-
+
+ +
+
+
+
+
+ +
+

Booting Embedded Go WASM Kernel

+

+ Compiling B-Tree transaction log, vector index, and ACID isolation manager into browser memory sandbox... +

+
+
+
+
+
@@ -1789,8 +1753,9 @@

Open Source &a // Initialize Lucide Icons document.addEventListener("DOMContentLoaded", () => { - lucide.createIcons(); + // Start the engine first so a slow icon CDN cannot hold it up. initWasmEngine(); + if (window.lucide) lucide.createIcons(); }); // WASM Engine Initializer diff --git a/demo/logo-mark.png b/demo/logo-mark.png index db9f3df09071edaa3585ff3f0c1853df11387a33..049ae116d3143d677ac9d271da221e1de7a08c90 100644 GIT binary patch literal 7201 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 jIF7(^1dbz6MBsk_&FZ!JOSK literal 66175 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 WoRcr1R}mBNeMpGN3Rem02mB9{_~&N; diff --git a/demo/tailwind.config.cjs b/demo/tailwind.config.cjs new file mode 100644 index 000000000..439758cd4 --- /dev/null +++ b/demo/tailwind.config.cjs @@ -0,0 +1,35 @@ +module.exports = { + content: ['./index.html'], + darkMode: 'class', + theme: { + extend: { + colors: { + brand: { + 50: '#ecfdf5', + 100: '#d1fae5', + 400: '#34d399', + 500: '#10b981', + 600: '#059669', + 700: '#047857', + }, + dark: { + 950: '#07090E', + 900: '#0B0F17', + 850: '#111726', + 800: '#182238', + 700: '#22304E', + 600: '#334155', + }, + accent: { + cyan: '#06B6D4', + violet: '#8B5CF6', + amber: '#F59E0B', + }, + }, + fontFamily: { + sans: ['Inter', 'system-ui', '-apple-system', 'sans-serif'], + mono: ['JetBrains Mono', 'Fira Code', 'monospace'], + }, + }, + }, +}; diff --git a/demo/tailwind.css b/demo/tailwind.css new file mode 100644 index 000000000..5d139bccc --- /dev/null +++ b/demo/tailwind.css @@ -0,0 +1 @@ +*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,system-ui,-apple-system,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:JetBrains Mono,Fira Code,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.left-3\.5{left:.875rem}.right-0{right:0}.right-4{right:1rem}.top-0{top:0}.top-3\.5{top:.875rem}.top-32{top:8rem}.top-4{top:1rem}.z-10{z-index:10}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.-mr-8{margin-right:-2rem}.-mt-8{margin-top:-2rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-auto{margin-left:auto}.mt-1{margin-top:.25rem}.mt-14{margin-top:3.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-16{height:4rem}.h-2\.5{height:.625rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-72{height:18rem}.h-80{height:20rem}.h-9{height:2.25rem}.h-96{height:24rem}.h-full{height:100%}.max-h-64{max-height:16rem}.max-h-80{max-height:20rem}.max-h-\[90vh\]{max-height:90vh}.min-h-\[16rem\]{min-height:16rem}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-16{width:4rem}.w-2\.5{width:.625rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-9{width:2.25rem}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[200px\]{min-width:200px}.min-w-\[620px\]{min-width:620px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-7xl{max-width:80rem}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.scroll-mt-20{scroll-margin-top:5rem}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem*var(--tw-space-x-reverse));margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))}.space-x-1\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.375rem*var(--tw-space-x-reverse));margin-left:calc(.375rem*(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.75rem*var(--tw-space-x-reverse));margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem*var(--tw-space-x-reverse));margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)))}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.125rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem*var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.625rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-accent-cyan\/30{border-color:rgba(6,182,212,.3)}.border-accent-cyan\/40{border-color:rgba(6,182,212,.4)}.border-accent-violet\/30{border-color:rgba(139,92,246,.3)}.border-accent-violet\/40{border-color:rgba(139,92,246,.4)}.border-amber-500\/30{border-color:rgba(245,158,11,.3)}.border-amber-500\/40{border-color:rgba(245,158,11,.4)}.border-blue-500\/30{border-color:rgba(59,130,246,.3)}.border-brand-500{--tw-border-opacity:1;border-color:rgb(16 185 129/var(--tw-border-opacity,1))}.border-brand-500\/20{border-color:rgba(16,185,129,.2)}.border-brand-500\/30{border-color:rgba(16,185,129,.3)}.border-brand-500\/40{border-color:rgba(16,185,129,.4)}.border-brand-500\/60{border-color:rgba(16,185,129,.6)}.border-dark-700{--tw-border-opacity:1;border-color:rgb(34 48 78/var(--tw-border-opacity,1))}.border-dark-700\/60{border-color:rgba(34,48,78,.6)}.border-dark-700\/80{border-color:rgba(34,48,78,.8)}.border-dark-800{--tw-border-opacity:1;border-color:rgb(24 34 56/var(--tw-border-opacity,1))}.border-dark-850{--tw-border-opacity:1;border-color:rgb(17 23 38/var(--tw-border-opacity,1))}.border-purple-500\/30{border-color:rgba(168,85,247,.3)}.border-rose-500\/30{border-color:rgba(244,63,94,.3)}.border-rose-500\/40{border-color:rgba(244,63,94,.4)}.border-transparent{border-color:transparent}.border-t-transparent{border-top-color:transparent}.bg-accent-cyan\/10{background-color:rgba(6,182,212,.1)}.bg-accent-cyan\/20{background-color:rgba(6,182,212,.2)}.bg-accent-violet{--tw-bg-opacity:1;background-color:rgb(139 92 246/var(--tw-bg-opacity,1))}.bg-accent-violet\/10{background-color:rgba(139,92,246,.1)}.bg-accent-violet\/20{background-color:rgba(139,92,246,.2)}.bg-amber-400{--tw-bg-opacity:1;background-color:rgb(251 191 36/var(--tw-bg-opacity,1))}.bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-amber-500\/10{background-color:rgba(245,158,11,.1)}.bg-black\/80{background-color:rgba(0,0,0,.8)}.bg-blue-500\/10{background-color:rgba(59,130,246,.1)}.bg-brand-400{--tw-bg-opacity:1;background-color:rgb(52 211 153/var(--tw-bg-opacity,1))}.bg-brand-500{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.bg-brand-500\/10{background-color:rgba(16,185,129,.1)}.bg-brand-500\/20{background-color:rgba(16,185,129,.2)}.bg-dark-800{--tw-bg-opacity:1;background-color:rgb(24 34 56/var(--tw-bg-opacity,1))}.bg-dark-850{--tw-bg-opacity:1;background-color:rgb(17 23 38/var(--tw-bg-opacity,1))}.bg-dark-900{--tw-bg-opacity:1;background-color:rgb(11 15 23/var(--tw-bg-opacity,1))}.bg-dark-900\/80{background-color:rgba(11,15,23,.8)}.bg-dark-950{--tw-bg-opacity:1;background-color:rgb(7 9 14/var(--tw-bg-opacity,1))}.bg-dark-950\/60{background-color:rgba(7,9,14,.6)}.bg-dark-950\/80{background-color:rgba(7,9,14,.8)}.bg-dark-950\/90{background-color:rgba(7,9,14,.9)}.bg-purple-500\/10{background-color:rgba(168,85,247,.1)}.bg-rose-500{--tw-bg-opacity:1;background-color:rgb(244 63 94/var(--tw-bg-opacity,1))}.bg-rose-500\/10{background-color:rgba(244,63,94,.1)}.bg-rose-500\/20{background-color:rgba(244,63,94,.2)}.bg-rose-600{--tw-bg-opacity:1;background-color:rgb(225 29 72/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-accent-cyan{--tw-gradient-from:#06b6d4 var(--tw-gradient-from-position);--tw-gradient-to:rgba(6,182,212,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-accent-violet{--tw-gradient-from:#8b5cf6 var(--tw-gradient-from-position);--tw-gradient-to:rgba(139,92,246,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-accent-violet\/10{--tw-gradient-from:rgba(139,92,246,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(139,92,246,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-brand-400{--tw-gradient-from:#34d399 var(--tw-gradient-from-position);--tw-gradient-to:rgba(52,211,153,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-brand-500{--tw-gradient-from:#10b981 var(--tw-gradient-from-position);--tw-gradient-to:rgba(16,185,129,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-brand-600{--tw-gradient-from:#059669 var(--tw-gradient-from-position);--tw-gradient-to:rgba(5,150,105,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-dark-850{--tw-gradient-from:#111726 var(--tw-gradient-from-position);--tw-gradient-to:rgba(17,23,38,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-accent-cyan{--tw-gradient-to:rgba(6,182,212,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#06b6d4 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-dark-950{--tw-gradient-to:rgba(7,9,14,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#07090e var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-accent-cyan{--tw-gradient-to:#06b6d4 var(--tw-gradient-to-position)}.to-accent-violet{--tw-gradient-to:#8b5cf6 var(--tw-gradient-to-position)}.to-blue-500{--tw-gradient-to:#3b82f6 var(--tw-gradient-to-position)}.to-brand-500{--tw-gradient-to:#10b981 var(--tw-gradient-to-position)}.to-dark-900{--tw-gradient-to:#0b0f17 var(--tw-gradient-to-position)}.to-dark-950{--tw-gradient-to:#07090e var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to:#9333ea var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.object-contain{-o-object-fit:contain;object-fit:contain}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-3{padding-bottom:.75rem}.pl-10{padding-left:2.5rem}.pr-4{padding-right:1rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-24{padding-top:6rem}.pt-3{padding-top:.75rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.font-mono{font-family:JetBrains Mono,Fira Code,monospace}.font-sans{font-family:Inter,system-ui,-apple-system,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.text-accent-cyan{--tw-text-opacity:1;color:rgb(6 182 212/var(--tw-text-opacity,1))}.text-accent-violet{--tw-text-opacity:1;color:rgb(139 92 246/var(--tw-text-opacity,1))}.text-amber-300{--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity,1))}.text-amber-400{--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity,1))}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-blue-400{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.text-brand-400{--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.text-brand-500\/80{color:rgba(16,185,129,.8)}.text-cyan-400{--tw-text-opacity:1;color:rgb(34 211 238/var(--tw-text-opacity,1))}.text-dark-600{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.text-dark-950{--tw-text-opacity:1;color:rgb(7 9 14/var(--tw-text-opacity,1))}.text-emerald-400{--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.text-purple-300{--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity,1))}.text-purple-400{--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity,1))}.text-rose-300{--tw-text-opacity:1;color:rgb(253 164 175/var(--tw-text-opacity,1))}.text-rose-400{--tw-text-opacity:1;color:rgb(251 113 133/var(--tw-text-opacity,1))}.text-slate-200{--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.text-slate-300{--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.text-slate-400{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.text-transparent{color:transparent}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.placeholder-slate-500::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(100 116 139/var(--tw-placeholder-opacity,1))}.placeholder-slate-500::placeholder{--tw-placeholder-opacity:1;color:rgb(100 116 139/var(--tw-placeholder-opacity,1))}.placeholder-slate-600::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(71 85 105/var(--tw-placeholder-opacity,1))}.placeholder-slate-600::placeholder{--tw-placeholder-opacity:1;color:rgb(71 85 105/var(--tw-placeholder-opacity,1))}.opacity-0{opacity:0}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-2xl,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-brand-500\/10{--tw-shadow-color:rgba(16,185,129,.1);--tw-shadow:var(--tw-shadow-colored)}.shadow-brand-500\/20{--tw-shadow-color:rgba(16,185,129,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-cyan-500\/20{--tw-shadow-color:rgba(6,182,212,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-500\/20{--tw-shadow-color:rgba(168,85,247,.2);--tw-shadow:var(--tw-shadow-colored)}.blur-3xl{--tw-blur:blur(64px)}.blur-3xl,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px)}.backdrop-blur-md,.backdrop-blur-sm{backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.selection\:bg-brand-500 ::-moz-selection{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.selection\:bg-brand-500 ::selection{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.selection\:text-black ::-moz-selection{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.selection\:text-black ::selection{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.selection\:bg-brand-500::-moz-selection{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.selection\:bg-brand-500::selection{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.selection\:text-black::-moz-selection{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.selection\:text-black::selection{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.hover\:border-accent-cyan\/40:hover{border-color:rgba(6,182,212,.4)}.hover\:border-accent-cyan\/50:hover{border-color:rgba(6,182,212,.5)}.hover\:border-accent-violet\/50:hover{border-color:rgba(139,92,246,.5)}.hover\:border-brand-500\/70:hover{border-color:rgba(16,185,129,.7)}.hover\:border-dark-700:hover{--tw-border-opacity:1;border-color:rgb(34 48 78/var(--tw-border-opacity,1))}.hover\:bg-accent-violet\/80:hover{background-color:rgba(139,92,246,.8)}.hover\:bg-amber-400:hover{--tw-bg-opacity:1;background-color:rgb(251 191 36/var(--tw-bg-opacity,1))}.hover\:bg-amber-950\/40:hover{background-color:rgba(69,26,3,.4)}.hover\:bg-brand-400:hover{--tw-bg-opacity:1;background-color:rgb(52 211 153/var(--tw-bg-opacity,1))}.hover\:bg-dark-700:hover{--tw-bg-opacity:1;background-color:rgb(34 48 78/var(--tw-bg-opacity,1))}.hover\:bg-dark-800:hover{--tw-bg-opacity:1;background-color:rgb(24 34 56/var(--tw-bg-opacity,1))}.hover\:bg-dark-850:hover{--tw-bg-opacity:1;background-color:rgb(17 23 38/var(--tw-bg-opacity,1))}.hover\:bg-rose-500:hover{--tw-bg-opacity:1;background-color:rgb(244 63 94/var(--tw-bg-opacity,1))}.hover\:bg-rose-950\/40:hover{background-color:rgba(76,5,25,.4)}.hover\:from-brand-500:hover{--tw-gradient-from:#10b981 var(--tw-gradient-from-position);--tw-gradient-to:rgba(16,185,129,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-cyan-400:hover{--tw-gradient-from:#22d3ee var(--tw-gradient-from-position);--tw-gradient-to:rgba(34,211,238,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-purple-500:hover{--tw-gradient-from:#a855f7 var(--tw-gradient-from-position);--tw-gradient-to:rgba(168,85,247,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:to-blue-400:hover{--tw-gradient-to:#60a5fa var(--tw-gradient-to-position)}.hover\:to-brand-400:hover{--tw-gradient-to:#34d399 var(--tw-gradient-to-position)}.hover\:to-purple-400:hover{--tw-gradient-to:#c084fc var(--tw-gradient-to-position)}.hover\:text-amber-300:hover{--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity,1))}.hover\:text-brand-400:hover{--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.hover\:text-rose-300:hover{--tw-text-opacity:1;color:rgb(253 164 175/var(--tw-text-opacity,1))}.hover\:text-slate-200:hover{--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.hover\:text-slate-300:hover{--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.focus\:border-accent-cyan:focus{--tw-border-opacity:1;border-color:rgb(6 182 212/var(--tw-border-opacity,1))}.focus\:border-accent-violet:focus{--tw-border-opacity:1;border-color:rgb(139 92 246/var(--tw-border-opacity,1))}.focus\:border-brand-500:focus{--tw-border-opacity:1;border-color:rgb(16 185 129/var(--tw-border-opacity,1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.group:hover .group-hover\:text-accent-cyan{--tw-text-opacity:1;color:rgb(6 182 212/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-accent-violet{--tw-text-opacity:1;color:rgb(139 92 246/var(--tw-text-opacity,1))}@media (min-width:440px){.min-\[440px\]\:inline{display:inline}}@media (min-width:640px){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:whitespace-nowrap{white-space:nowrap}.sm\:p-10{padding:2.5rem}.sm\:p-8{padding:2rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:text-left{text-align:left}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width:768px){.md\:col-span-2{grid-column:span 2/span 2}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:1024px){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:text-5xl{font-size:3rem;line-height:1}}@media (min-width:1536px){.\32xl\:flex{display:flex}} \ No newline at end of file diff --git a/scripts/assemble-site.sh b/scripts/assemble-site.sh index ce1a11914..a45b588b9 100755 --- a/scripts/assemble-site.sh +++ b/scripts/assemble-site.sh @@ -14,7 +14,7 @@ rm -rf "$SITE" mkdir -p "$SITE/arena" "$SITE/agents" "$SITE/docs" "$SITE/assets" # Technical demo (WASM) lives at the site root: joltrinhq.com/ -cp demo/index.html demo/sop.wasm demo/wasm_exec.js demo/404.html demo/favicon.svg demo/favicon.ico demo/og-image.png demo/logo-mark.png "$SITE/" +cp demo/index.html demo/tailwind.css demo/sop.wasm demo/wasm_exec.js demo/404.html demo/favicon.svg demo/favicon.ico demo/og-image.png demo/logo-mark.png "$SITE/" # The documentation index lives at joltrinhq.com/docs/ cp docs/index.html "$SITE/docs/" # The homepage loads its replay and videos from ./assets/. Every file there ships. diff --git a/scripts/build-css.sh b/scripts/build-css.sh new file mode 100755 index 000000000..1c24d0064 --- /dev/null +++ b/scripts/build-css.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env bash +# Builds demo/tailwind.css, the stylesheet the homepage links. It replaces the +# Tailwind CDN script, which compiled the page's classes in the browser before +# first paint. Uses the Tailwind CLI that sop-arena already installs, so run +# `npm ci` in sop-arena first. Commit the result when index.html changes; the +# Site Check job fails if demo/tailwind.css is out of date. +set -euo pipefail + +REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" +cd "$REPO_ROOT/demo" + +TAILWIND="../sop-arena/node_modules/.bin/tailwindcss" +[ -x "$TAILWIND" ] || { echo "run npm ci in sop-arena first" >&2; exit 1; } + +printf '@tailwind base;\n@tailwind components;\n@tailwind utilities;\n' > "${TMPDIR:-/tmp}/joltrin-tailwind-in.css" +"$TAILWIND" -c tailwind.config.cjs -i "${TMPDIR:-/tmp}/joltrin-tailwind-in.css" -o tailwind.css --minify From cb2f8338b2989817139b27b7fa78bd8b368744b0 Mon Sep 17 00:00:00 2001 From: Gerard Louis Recinto Date: Mon, 5 Oct 2026 11:16:56 -0700 Subject: [PATCH 5/5] log when the icon library fails to load instead of skipping silently --- demo/index.html | 1 + 1 file changed, 1 insertion(+) diff --git a/demo/index.html b/demo/index.html index 1f5cab371..5f22897cf 100644 --- a/demo/index.html +++ b/demo/index.html @@ -1756,6 +1756,7 @@

Open Source &a // Start the engine first so a slow icon CDN cannot hold it up. initWasmEngine(); if (window.lucide) lucide.createIcons(); + else console.error('Lucide icon library failed to load from unpkg.com; icons will not render.'); }); // WASM Engine Initializer