@h-rig/product-ad-website 0.0.6-alpha.283
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/package.json +52 -0
- package/site/assets/favicon.svg +1 -0
- package/site/assets/og-card.png +0 -0
- package/site/assets/rig.css +199 -0
- package/site/assets/rig.js +66 -0
- package/site/assets/search-index.json +1 -0
- package/site/assets/site.css +46 -0
- package/site/assets/site.js +510 -0
- package/site/cli/index.html +88 -0
- package/site/config/index.html +256 -0
- package/site/docs/agent-tools/index.html +129 -0
- package/site/docs/architecture/index.html +42 -0
- package/site/docs/capabilities/index.html +84 -0
- package/site/docs/entities/index.html +68 -0
- package/site/docs/environment/index.html +62 -0
- package/site/docs/faq/index.html +17 -0
- package/site/docs/fleet-irc/index.html +44 -0
- package/site/docs/gate/index.html +128 -0
- package/site/docs/getting-started/index.html +50 -0
- package/site/docs/glossary/index.html +31 -0
- package/site/docs/index.html +68 -0
- package/site/docs/operator/index.html +49 -0
- package/site/docs/packages/index.html +36 -0
- package/site/docs/pi-extensions/index.html +15 -0
- package/site/docs/recipes/index.html +28 -0
- package/site/docs/runs/index.html +35 -0
- package/site/docs/security/index.html +29 -0
- package/site/docs/server/index.html +27 -0
- package/site/docs/swarm-commander/index.html +41 -0
- package/site/docs/task-sources/index.html +129 -0
- package/site/docs/troubleshooting/index.html +23 -0
- package/site/docs/validators/index.html +177 -0
- package/site/index.html +1653 -0
- package/site/plugins/examples/index.html +419 -0
- package/site/plugins/index.html +193 -0
- package/site/skills/index.html +140 -0
- package/site/variants/deck/index.html +1 -0
package/README.md
ADDED
package/package.json
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@h-rig/product-ad-website",
|
|
3
|
+
"version": "0.0.6-alpha.283",
|
|
4
|
+
"description": "Immutable Rig release assets for product-ad-website.",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"files": [
|
|
7
|
+
"site"
|
|
8
|
+
],
|
|
9
|
+
"rigRelease": {
|
|
10
|
+
"gitSha": "80f7971ffc6d54bb63652921ade58c4a3b0c9f77",
|
|
11
|
+
"assetKind": "product-ad-website",
|
|
12
|
+
"siteSha256": "2879406bb509958135e991d4e4469c71b15f2882f5eb1ca2d7703f4d512434ec",
|
|
13
|
+
"files": {
|
|
14
|
+
"assets/favicon.svg": "98206ce65d671b76975d8e3cf01390b026e0d642aca3613a2ccda84ba428eba2",
|
|
15
|
+
"assets/og-card.png": "fd4fa77362e3281e7dd485cbd3b6e8b1db22f93ede073d91ebf59101889e6df0",
|
|
16
|
+
"assets/rig.css": "fdce086f6e084c2bbaefd4d623bbc34e66854d2c1b9b70fc04862d698b54fb13",
|
|
17
|
+
"assets/rig.js": "23e7d0bf84dffd1eed602aef18ba11e765c86f885587b0997737dc2c944705dc",
|
|
18
|
+
"assets/search-index.json": "a7be00338ba484952978757f9728114d44e4a83605392a70d1381a4a8f2cdcd1",
|
|
19
|
+
"assets/site.css": "ce9b668b0eebfd360ca9fd65edb379476e445dcc122109f3fc4f0b17f403a189",
|
|
20
|
+
"assets/site.js": "da47f931a4af349a67b32dcb11e782503d6f7b72316e162bbf4885aab0344c1d",
|
|
21
|
+
"cli/index.html": "b62dfdfae91952c66a40c045c7eacec0ef2c72caa8addcfe0ebd539119726508",
|
|
22
|
+
"config/index.html": "b59c9182ade5cfec304debdfd0c93975a516524205011f322f79899253f792ba",
|
|
23
|
+
"docs/agent-tools/index.html": "cfacb4ed9f77e9350eea684ae6cd6eb5b3c6a17bd0da5657a34130a7634ecf58",
|
|
24
|
+
"docs/architecture/index.html": "9e361843c56e53ed448d06144383fa5d670cccdfbea90fd3dfe2ef4ae5c532f1",
|
|
25
|
+
"docs/capabilities/index.html": "cc473f57d83d5ed57678317b1e1036803e9ee4ed20e7d8b40241b90a226c4f83",
|
|
26
|
+
"docs/entities/index.html": "c7c39a3fbec5396ae36c045fdf02e3b9295fdf609567642927fbd3c64b48cb33",
|
|
27
|
+
"docs/environment/index.html": "0435a61541279e607213a5ddc0617d35341abcae260cb6de697d4daffea3a1e4",
|
|
28
|
+
"docs/faq/index.html": "3b79374b62efe60b94f0884c39019337b9b554abb41dffd24ca3b8c52dd9528c",
|
|
29
|
+
"docs/fleet-irc/index.html": "cc1be5dccb6f5b68d511e278eb4e0cafa9b5686322d8bba3c3988d34f7937785",
|
|
30
|
+
"docs/gate/index.html": "afc3dc402fc56fe8f8538946ca3cfbbca3eb5fe8148f9e0ff25be1bac5cde24d",
|
|
31
|
+
"docs/getting-started/index.html": "5fa42fcc3eabf3007e4ccbbc0c4097167d7a9e0abefc8fda136ec10727236264",
|
|
32
|
+
"docs/glossary/index.html": "d046368780e735f7916aef52081059088b2fa4600eb63e96898811ec0c9a918c",
|
|
33
|
+
"docs/index.html": "6e3587cdbc01c4de42699e9c30fc0832585131b6add81021aac2fefefd2f6384",
|
|
34
|
+
"docs/operator/index.html": "3b1e5bdccce0dedf6dded543d5b9b029eb881132f319e16680cbdf55a69ce64b",
|
|
35
|
+
"docs/packages/index.html": "f9169c43882c9ff4733d48fc03e2599d1c55c232048e1fc87b05886969d98c8f",
|
|
36
|
+
"docs/pi-extensions/index.html": "8a751db709c87721add2bf82206a177ee904d9b915a520b9c38e36e2ad6e3ea3",
|
|
37
|
+
"docs/recipes/index.html": "23e7ee1bfa939ffc89e17965ddb667cb896026331b0984251c351f9f97c4edd4",
|
|
38
|
+
"docs/runs/index.html": "8b5a3bcdd1f5092b20a401d5873c6cf0c5e70e5a833b7ba49d850835bce21888",
|
|
39
|
+
"docs/security/index.html": "8c709cec465bdf518a2643215f0a9c7f34d4615754c3be049199f9c837dd82c3",
|
|
40
|
+
"docs/server/index.html": "1d26e87115fa04efd1662f88bb0d9b13e1a490b5f5aef12d927992f046d15291",
|
|
41
|
+
"docs/swarm-commander/index.html": "4f9a384699b8cc01bd492a935196df472c5d83488495e2da2e221b414dabdf01",
|
|
42
|
+
"docs/task-sources/index.html": "53fd280f001c19fb2e4f2af1162786c630485ec7ed757d1c353acc6459a89d8d",
|
|
43
|
+
"docs/troubleshooting/index.html": "4aae71e36689dbc518f9439721e86f9db85e0893cbdebc26a0c06161defd6a3e",
|
|
44
|
+
"docs/validators/index.html": "f93d4b11756a15ad0d88ae724cf7056e3cab51f52b6712a05912a3c37f2ebc09",
|
|
45
|
+
"index.html": "154ccafb1295b296d41a4528cad05abae429e23045e5f7a006f43f4654cbb9c3",
|
|
46
|
+
"plugins/examples/index.html": "49ac243f6b2977a33e074cb79f8fa06eeb5369fcf997a35bcf9b34c0dfefc6ed",
|
|
47
|
+
"plugins/index.html": "fa36bf0fa307ea7a97ce90242c07df78907c07cc04b9b5aee2afe397020b4552",
|
|
48
|
+
"skills/index.html": "4cbee7f30a05a0bcfbbd74026c60c22a7ec929fde7cd1327ce90ba85570a7363",
|
|
49
|
+
"variants/deck/index.html": "be9b4ade333a9cba94914ee66d5d6413961b13ab8fbe44f76345fb3218e0137d"
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><rect x="4" y="4" width="24" height="24" rx="6" fill="#ccff4d"/><rect x="12" y="12" width="8" height="8" rx="2" fill="#070809"/></svg>
|
|
Binary file
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
|
|
2
|
+
@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap');
|
|
3
|
+
:root{
|
|
4
|
+
--bg:#070809;--bg-2:#0b0c0e;--panel:#0d0e11;--panel-2:#101115;
|
|
5
|
+
--line:rgba(255,255,255,.07);--line-2:rgba(255,255,255,.13);
|
|
6
|
+
--ink:#f2f3f6;--ink-2:#aeb0ba;--ink-3:#6c6e79;--ink-4:#44464f;
|
|
7
|
+
--ac:#ccff4d; /* v6 electric lime (home-matched) */
|
|
8
|
+
--ac-dim:#a9d63f;
|
|
9
|
+
--ac-2:#56d8ff; /* v6 cyan */
|
|
10
|
+
--mono:'JetBrains Mono',ui-monospace,monospace;
|
|
11
|
+
--disp:'Space Grotesk',system-ui,sans-serif;
|
|
12
|
+
--body:'Space Grotesk',system-ui,sans-serif;
|
|
13
|
+
--maxw:1340px;
|
|
14
|
+
}
|
|
15
|
+
*{box-sizing:border-box}html{scroll-behavior:smooth}
|
|
16
|
+
body{margin:0;background:var(--bg);color:var(--ink-2);font-family:var(--body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
|
|
17
|
+
/* abstract atmosphere — soft out-of-focus blooms, no grid/lines/furniture */
|
|
18
|
+
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
|
|
19
|
+
background:
|
|
20
|
+
radial-gradient(46% 36% at 84% 4%,rgba(204,255,77,.09),transparent 70%),
|
|
21
|
+
radial-gradient(44% 40% at 10% 18%,rgba(86,216,255,.05),transparent 72%),
|
|
22
|
+
radial-gradient(58% 50% at 62% 110%,rgba(204,255,77,.04),transparent 70%);
|
|
23
|
+
filter:blur(10px)}
|
|
24
|
+
a{color:var(--ink);text-decoration:none;transition:color .15s}
|
|
25
|
+
a:hover{color:var(--ac)}
|
|
26
|
+
code,pre,kbd{font-family:var(--mono)}
|
|
27
|
+
::selection{background:var(--ac);color:#070809}
|
|
28
|
+
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
|
|
29
|
+
|
|
30
|
+
/* ---------- nav: small, targeted, recessive ---------- */
|
|
31
|
+
.nav{position:sticky;top:0;z-index:50;backdrop-filter:blur(16px);background:rgba(6,6,7,.72);border-bottom:1px solid var(--line)}
|
|
32
|
+
.nav-in{max-width:var(--maxw);margin:0 auto;padding:16px 28px;display:flex;align-items:center;gap:32px}
|
|
33
|
+
.brand{font-family:var(--disp);font-weight:600;font-size:15px;letter-spacing:.02em;color:var(--ink);display:flex;align-items:center;gap:2px}
|
|
34
|
+
.brand .blk{color:var(--ink)}
|
|
35
|
+
.brand .mk{display:inline-block;width:8px;height:8px;background:var(--ac);border-radius:2px;box-shadow:0 0 10px var(--ac);margin-right:8px;vertical-align:middle;animation:pulse 2.4s ease-in-out infinite}
|
|
36
|
+
@keyframes pulse{50%{opacity:.45;transform:scale(.82)}}
|
|
37
|
+
.brand .mark{color:var(--ac);animation:blink 1.4s steps(1) infinite}
|
|
38
|
+
@keyframes blink{50%{opacity:0}}
|
|
39
|
+
.nav-links{display:flex;gap:24px;flex-wrap:wrap;margin-left:auto;align-items:center}
|
|
40
|
+
.nav-links a{font-size:13px;color:var(--ink-3);padding:2px 0;letter-spacing:.01em;transition:color .15s;position:relative}
|
|
41
|
+
.nav-links a:hover{color:var(--ink)}
|
|
42
|
+
.nav-links a.active{color:var(--ink)}
|
|
43
|
+
.nav-links a.active::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--ac)}
|
|
44
|
+
.nav-links a.ext{color:var(--ink-4)}
|
|
45
|
+
.nav-links a.live{color:var(--ink-3)}
|
|
46
|
+
.nav-links a.live::before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--ac);margin-right:6px;vertical-align:middle}
|
|
47
|
+
.burger{display:none}
|
|
48
|
+
|
|
49
|
+
/* ---------- type ---------- */
|
|
50
|
+
h1,h2,h3,h4{font-family:var(--disp);line-height:1.05;letter-spacing:-.02em;margin:0;color:var(--ink);font-weight:600}
|
|
51
|
+
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3)}
|
|
52
|
+
.slash{color:var(--ac)}
|
|
53
|
+
|
|
54
|
+
/* ---------- hero ---------- */
|
|
55
|
+
.hero{position:relative;padding:120px 0 96px;border-bottom:1px solid var(--line)}
|
|
56
|
+
.hero .wrap{position:relative;z-index:2}
|
|
57
|
+
.hero-tag{font-family:var(--mono);font-size:13px;color:var(--ink-3);margin-bottom:30px;letter-spacing:.02em}
|
|
58
|
+
.jackin{display:inline-block;font-family:var(--mono);font-size:clamp(13px,1.5vw,15px);color:var(--ink-3);margin-bottom:30px;letter-spacing:.04em}
|
|
59
|
+
.jackin .cur{color:var(--ac);animation:blink 1.4s steps(1) infinite}
|
|
60
|
+
.hero h1{font-size:clamp(56px,11vw,150px);font-weight:700;margin:0 0 6px;letter-spacing:-.045em;line-height:.94;color:var(--ink)}
|
|
61
|
+
.hero h1 .ln2{display:block}
|
|
62
|
+
.hero h1 .grad{color:var(--ac)}
|
|
63
|
+
.hero-sub{font-size:clamp(18px,2.2vw,23px);color:var(--ink-2);max-width:560px;margin:34px 0 0;line-height:1.5;font-weight:400}
|
|
64
|
+
.hero-sub b{color:var(--ink);font-weight:500}.hero-sub .dim{color:var(--ink-3)}
|
|
65
|
+
|
|
66
|
+
/* ---------- install ---------- */
|
|
67
|
+
.install{margin-top:40px;max-width:640px}
|
|
68
|
+
.tabs{display:none}
|
|
69
|
+
.cmd{display:flex;align-items:center;gap:14px;background:var(--panel);border:1px solid var(--line-2);border-radius:8px;padding:16px 20px;font-family:var(--mono)}
|
|
70
|
+
.cmd .pr{color:var(--ac)}
|
|
71
|
+
.cmd code{color:var(--ink-2);font-size:14px;flex:1;overflow-x:auto;white-space:nowrap}
|
|
72
|
+
.cmd .cp{margin-left:auto;border:none;background:transparent;color:var(--ink-4);font-family:var(--mono);font-size:11px;padding:4px 8px;cursor:pointer;transition:.15s;flex:none;letter-spacing:.04em}
|
|
73
|
+
.cmd .cp:hover{color:var(--ac)}
|
|
74
|
+
|
|
75
|
+
/* ---------- buttons ---------- */
|
|
76
|
+
.btn-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:36px;align-items:center}
|
|
77
|
+
.btn{font-size:14px;padding:13px 24px;border-radius:8px;border:1px solid var(--line-2);color:var(--ink-2);transition:.15s;display:inline-flex;gap:8px;align-items:center}
|
|
78
|
+
.btn:hover{border-color:var(--ink-3);color:var(--ink)}
|
|
79
|
+
.btn.pri{background:var(--ac);color:#070809;border-color:var(--ac);font-weight:600}
|
|
80
|
+
.btn.pri:hover{box-shadow:0 8px 30px rgba(204,255,77,.28);transform:translateY(-1px)}
|
|
81
|
+
|
|
82
|
+
/* ---------- sections ---------- */
|
|
83
|
+
section{padding:110px 0;border-bottom:1px solid var(--line)}
|
|
84
|
+
.sec-head{margin-bottom:60px;max-width:680px}
|
|
85
|
+
.sec-head h2{font-size:clamp(32px,5vw,56px);font-weight:600;margin:18px 0 0;letter-spacing:-.03em}
|
|
86
|
+
.sec-head p{color:var(--ink-3);font-size:18px;margin:18px 0 0;line-height:1.55}
|
|
87
|
+
.frow{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;margin:72px 0}
|
|
88
|
+
.frow.rev{direction:rtl}.frow.rev>*{direction:ltr}
|
|
89
|
+
.frow h3{font-size:clamp(24px,3vw,34px);font-weight:600;margin-bottom:18px;letter-spacing:-.02em}
|
|
90
|
+
.frow p{color:var(--ink-3);font-size:17px;margin:0 0 14px;line-height:1.6}.frow p b{color:var(--ink-2)}
|
|
91
|
+
|
|
92
|
+
/* panels — flat, quiet, no brackets */
|
|
93
|
+
.demo{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:hidden}
|
|
94
|
+
.demo-bar{display:flex;align-items:center;gap:10px;padding:13px 18px;border-bottom:1px solid var(--line)}
|
|
95
|
+
.demo-bar .dot{display:none}
|
|
96
|
+
.demo-bar .t{font-family:var(--mono);font-size:12px;color:var(--ink-4);letter-spacing:.02em}
|
|
97
|
+
.demo-body{padding:22px;font-family:var(--mono);font-size:13px;line-height:1.9}
|
|
98
|
+
.demo-body .pr{color:var(--ac)}.demo-body .cmt{color:var(--ink-4)}.demo-body .ok{color:var(--ac)}
|
|
99
|
+
.demo-body .cy{color:var(--ac-2)}.demo-body .yl{color:var(--ac)}.demo-body .mg{color:#ff6ba8}.demo-body .dim{color:var(--ink-4)}
|
|
100
|
+
|
|
101
|
+
/* loop strip — quiet pills */
|
|
102
|
+
.loop{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-start;margin-top:0}
|
|
103
|
+
.loop .node,.loop a.node{font-family:var(--mono);font-size:12.5px;padding:8px 14px;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--ink-3);white-space:nowrap;text-decoration:none;transition:.15s}
|
|
104
|
+
.loop a.node:hover{border-color:var(--ink-3);color:var(--ink)}
|
|
105
|
+
.loop .node.hot{border-color:var(--ac);color:var(--ac)}
|
|
106
|
+
.loop .arr{color:var(--ink-4)}
|
|
107
|
+
|
|
108
|
+
/* cards — flat, hairline, restrained */
|
|
109
|
+
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}
|
|
110
|
+
.card{position:relative;display:block;color:inherit;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:26px;transition:.15s}
|
|
111
|
+
.card:hover{border-color:var(--ink-4);color:inherit;background:var(--panel-2)}
|
|
112
|
+
.card .ic{font-family:var(--mono);font-size:12px;color:var(--ink-3);letter-spacing:.08em}
|
|
113
|
+
.card h4{font-size:18px;margin:12px 0 8px;font-weight:600;color:var(--ink)}
|
|
114
|
+
.card p{color:var(--ink-3);font-size:14px;margin:0}
|
|
115
|
+
.card.pkg{padding:20px 24px}
|
|
116
|
+
.card.pkg .nm{font-family:var(--mono);color:var(--ink-2);font-size:14px}
|
|
117
|
+
.card.pkg:hover .nm{color:var(--ac)}
|
|
118
|
+
|
|
119
|
+
/* code */
|
|
120
|
+
pre.code{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:22px;overflow-x:auto;font-size:13.5px;line-height:1.75;color:var(--ink-2);margin:22px 0}
|
|
121
|
+
pre.code .k{color:#ff6ba8}pre.code .s{color:var(--ac)}pre.code .c{color:var(--ink-4)}pre.code .f{color:var(--ac-2)}pre.code .p{color:var(--ink-3)}
|
|
122
|
+
kbd{background:var(--panel-2);border:1px solid var(--line-2);border-radius:5px;padding:2px 7px;font-size:12px;color:var(--ink-2)}
|
|
123
|
+
|
|
124
|
+
/* tables */
|
|
125
|
+
table.t{width:100%;border-collapse:collapse;margin:24px 0;font-size:14px}
|
|
126
|
+
table.t th{text-align:left;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);padding:13px 14px;border-bottom:1px solid var(--line-2);font-weight:500}
|
|
127
|
+
table.t td{padding:13px 14px;border-bottom:1px solid var(--line);color:var(--ink-3);vertical-align:top}
|
|
128
|
+
table.t td:first-child{color:var(--ink-2);font-family:var(--mono);font-size:13px;white-space:nowrap}
|
|
129
|
+
table.t code{color:var(--ac)}
|
|
130
|
+
|
|
131
|
+
/* docs layout */
|
|
132
|
+
.docwrap{display:grid;grid-template-columns:220px 1fr;gap:64px;max-width:var(--maxw);margin:0 auto;padding:64px 28px}
|
|
133
|
+
.sidebar{position:sticky;top:84px;align-self:start;max-height:calc(100vh - 110px);overflow-y:auto}
|
|
134
|
+
.sidebar .grp{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);margin:26px 0 12px}
|
|
135
|
+
.sidebar a{display:block;font-size:14px;color:var(--ink-3);padding:7px 0;transition:.15s}
|
|
136
|
+
.sidebar a:hover{color:var(--ink)}
|
|
137
|
+
.sidebar a.active{color:var(--ac)}
|
|
138
|
+
.doc{min-width:0}
|
|
139
|
+
.doc h1{font-size:clamp(36px,5vw,52px);font-weight:700;margin-bottom:10px;letter-spacing:-.035em;color:var(--ink)}
|
|
140
|
+
.doc .lede{color:var(--ink-3);font-size:19px;margin:10px 0 44px;max-width:680px;line-height:1.5}
|
|
141
|
+
.doc h2{font-size:27px;font-weight:600;margin:56px 0 16px;letter-spacing:-.02em;color:var(--ink)}
|
|
142
|
+
.doc h3{font-size:19px;font-weight:600;margin:30px 0 10px;color:var(--ink)}
|
|
143
|
+
.doc h3 .ns{color:var(--ac);font-family:var(--mono);font-size:16px}
|
|
144
|
+
.doc p{color:var(--ink-2);margin:14px 0}
|
|
145
|
+
.doc ul{color:var(--ink-3);padding-left:20px}.doc li{margin:9px 0}.doc li b{color:var(--ink-2)}
|
|
146
|
+
.doc .note{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:18px 22px;margin:24px 0;font-size:14.5px;color:var(--ink-3)}
|
|
147
|
+
.doc .note b{color:var(--ac)}
|
|
148
|
+
|
|
149
|
+
/* footer */
|
|
150
|
+
footer{padding:72px 0 90px;border-top:1px solid var(--line)}
|
|
151
|
+
.foot{display:flex;flex-wrap:wrap;gap:48px;justify-content:space-between;align-items:flex-start}
|
|
152
|
+
.foot .col h5{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);margin:0 0 16px;font-weight:500}
|
|
153
|
+
.foot .col a{display:block;color:var(--ink-3);font-size:14px;padding:5px 0;transition:.15s}.foot .col a:hover{color:var(--ink)}
|
|
154
|
+
.foot .sig{font-family:var(--mono);font-size:12px;color:var(--ink-4);max-width:280px;line-height:1.7}.foot .sig .blk{color:var(--ink-3)}
|
|
155
|
+
|
|
156
|
+
@media(max-width:980px){.frow,.frow.rev{grid-template-columns:1fr;direction:ltr}.docwrap{grid-template-columns:1fr}.sidebar{position:static;max-height:none;border-bottom:1px solid var(--line);padding-bottom:18px}
|
|
157
|
+
.nav-links{gap:16px}.nav-links a.ext{display:none}}
|
|
158
|
+
|
|
159
|
+
/* docs ambient field — quiet, low-density, same family as home scenes but readable */
|
|
160
|
+
#docfield{position:fixed;inset:0;width:100vw;height:100vh;z-index:-1;pointer-events:none;opacity:.5}
|
|
161
|
+
|
|
162
|
+
/* ---------- docs landing: journey map ---------- */
|
|
163
|
+
.jpath{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:34px 0 10px;font-family:var(--mono);font-size:12.5px}
|
|
164
|
+
.jpath .jn{padding:9px 15px;border:1px solid var(--line-2);border-radius:7px;color:var(--ink-2);background:var(--panel);transition:.15s;white-space:nowrap}
|
|
165
|
+
.jpath a.jn:hover{border-color:var(--ac);color:var(--ac);transform:translateY(-1px)}
|
|
166
|
+
.jpath .ja{color:var(--ink-4)}
|
|
167
|
+
.jgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:30px 0}
|
|
168
|
+
@media(max-width:760px){.jgrid{grid-template-columns:1fr}}
|
|
169
|
+
.jcard{position:relative;display:block;color:inherit;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:26px 28px;transition:.18s;overflow:hidden}
|
|
170
|
+
.jcard::after{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--ac);transform:scaleY(0);transform-origin:top;transition:transform .25s}
|
|
171
|
+
.jcard:hover{border-color:var(--ink-4);background:var(--panel-2);transform:translateY(-2px)}
|
|
172
|
+
.jcard:hover::after{transform:scaleY(1)}
|
|
173
|
+
.jcard .jno{font-family:var(--mono);font-size:11.5px;color:var(--ink-4);letter-spacing:.1em}
|
|
174
|
+
.jcard:hover .jno{color:var(--ac)}
|
|
175
|
+
.jcard h3{font-size:19px;margin:10px 0 8px;font-weight:600;color:var(--ink)}
|
|
176
|
+
.jcard p{color:var(--ink-3);font-size:14.5px;margin:0;line-height:1.55}
|
|
177
|
+
.jcard .jcmd{display:inline-block;margin-top:14px;font-family:var(--mono);font-size:12px;color:var(--ac-dim)}
|
|
178
|
+
|
|
179
|
+
/* ---------- prev/next cross-links at the bottom of a doc page ---------- */
|
|
180
|
+
.nextnav{display:flex;gap:14px;flex-wrap:wrap;margin:64px 0 0;border-top:1px solid var(--line);padding-top:28px}
|
|
181
|
+
.nextnav a{flex:1;min-width:220px;display:block;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px 22px;transition:.18s}
|
|
182
|
+
.nextnav a:hover{border-color:var(--ink-4);background:var(--panel-2);transform:translateY(-2px)}
|
|
183
|
+
.nextnav .dir{font-family:var(--mono);font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-4)}
|
|
184
|
+
.nextnav .ttl{display:block;color:var(--ink);font-size:15.5px;margin-top:6px;font-weight:500}
|
|
185
|
+
.nextnav a:hover .ttl{color:var(--ac)}
|
|
186
|
+
|
|
187
|
+
/* ---------- terminal mock helpers (operator guide etc.) ---------- */
|
|
188
|
+
.demo-body .w{color:var(--ink)}
|
|
189
|
+
.demo-body .spin{color:var(--ac);display:inline-block;width:1ch}
|
|
190
|
+
.demo-body .capln .k{color:var(--ac-2);display:inline-block;min-width:12ch}
|
|
191
|
+
.demo-body .capbx{display:block;border-left:1px solid rgba(204,255,77,.35);margin:6px 0;padding-left:14px}
|
|
192
|
+
|
|
193
|
+
/* ---------- micro-interactions ---------- */
|
|
194
|
+
.card:hover{transform:translateY(-2px)}
|
|
195
|
+
.sidebar a{position:relative}
|
|
196
|
+
.sidebar a:hover{padding-left:4px}
|
|
197
|
+
.sidebar a,.card,.btn{will-change:transform}
|
|
198
|
+
.doc h2{scroll-margin-top:90px}
|
|
199
|
+
.doc h3{scroll-margin-top:90px}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
|
|
2
|
+
/* Themed scenes for pages ADDED after the original field shipped.
|
|
3
|
+
STANDING RULE (Alex, 2026-06-10): every NEW section/page ships with its own
|
|
4
|
+
NEW dedicated themed canvas scene, added here + a theme entry in
|
|
5
|
+
scripts/site-build.ts. Existing pages keep the original drone-lane field. */
|
|
6
|
+
(function(){
|
|
7
|
+
window.__rigThemedScene=function(cv,theme){
|
|
8
|
+
var ctx=cv.getContext('2d'),W,H,DPR=Math.min(devicePixelRatio||1,2),t=0,sy=0;
|
|
9
|
+
var L=[204,255,77],C=[86,216,255];
|
|
10
|
+
function size(){W=cv.clientWidth;H=cv.clientHeight;cv.width=W*DPR;cv.height=H*DPR;ctx.setTransform(DPR,0,0,DPR,0,0);}
|
|
11
|
+
addEventListener('resize',size);addEventListener('scroll',function(){sy=scrollY;},{passive:true});
|
|
12
|
+
function rgba(c,a){return 'rgba('+c[0]+','+c[1]+','+c[2]+','+a+')';}
|
|
13
|
+
function dot(x,y,r,c,a){ctx.fillStyle=rgba(c,a);ctx.beginPath();ctx.arc(x,y,r,0,7);ctx.fill();}
|
|
14
|
+
function glow(x,y,r,c,a){dot(x,y,r,c,a);dot(x,y,r*3,c,a*.12);}
|
|
15
|
+
function line(ax,ay,bx,by,c,a){ctx.strokeStyle=rgba(c,a);ctx.lineWidth=1;ctx.beginPath();ctx.moveTo(ax,ay);ctx.lineTo(bx,by);ctx.stroke();}
|
|
16
|
+
var P=[];function pool(n,mk){P=[];for(var i=0;i<n;i++)P.push(mk(i));}
|
|
17
|
+
var S={
|
|
18
|
+
layers:{init:function(){pool(4,function(i){return{d:.25+i*.25};});},frame:function(){for(var i=0;i<P.length;i++){var p=P[i],y=H*(.1+i*.09)+Math.sin(t*.0009+i)*6-sy*.03*p.d,ins=W*.06*(P.length-i);ctx.strokeStyle=rgba(i%2?C:L,.07);ctx.strokeRect(ins,y,W-ins*2,30+i*8);glow(ins,y,1.6,i%2?C:L,.25);}}},
|
|
19
|
+
multiroot:{init:function(){pool(4,function(i){return{a:i/4*6.28+.6,n:4+i%3};});},frame:function(){var hx=W*.5,hy=H*.24;glow(hx,hy,3.4,L,.4+.15*Math.sin(t*.04));for(var i=0;i<P.length;i++){var p=P[i],rx=hx+Math.cos(p.a+t*.0012)*W*.3,ry=hy+Math.sin(p.a+t*.0012)*H*.13;line(hx,hy,rx,ry,C,.08);glow(rx,ry,2,C,.3);for(var k=0;k<p.n;k++){var sa=k/p.n*6.28+t*.004;glow(rx+Math.cos(sa)*16,ry+Math.sin(sa)*10,1,L,.2);}}}},
|
|
20
|
+
shield:{init:function(){pool(0,function(){return{};});},frame:function(){var cx=W*.5,cy=H*.26;for(var r=1;r<=4;r++){var rr=r*34+Math.sin(t*.02-r)*4;ctx.beginPath();for(var k=0;k<=6;k++){var a=k/6*6.28+t*.001;var px=cx+Math.cos(a)*rr*1.6,py=cy+Math.sin(a)*rr*.6;k?ctx.lineTo(px,py):ctx.moveTo(px,py);}ctx.strokeStyle=rgba(r%2?C:L,.1-r*.015);ctx.stroke();}glow(cx,cy,2.4,L,.35);}},
|
|
21
|
+
signal:{init:function(){},frame:function(){var mY=H*.26,res=Math.min(1,.25+(t*.25%600)/420);ctx.beginPath();for(var x=0;x<W;x+=6){var n=(Math.random()-.5)*46*(1-res),w=Math.sin(x*.012+t*.02)*12*res,y=mY+n+w;x?ctx.lineTo(x,y):ctx.moveTo(x,y);}ctx.strokeStyle=rgba(res>.92?L:C,.16+res*.12);ctx.lineWidth=1.2;ctx.stroke();}},
|
|
22
|
+
feeds:{init:function(){pool(28,function(i){return{s:i%4,p:Math.random(),v:.0015+Math.random()*.0025};});},frame:function(){for(var i=0;i<P.length;i++){var p=P[i];p.p+=p.v;if(p.p>1)p.p=0;var s0=H*(.1+p.s*.09),x=p.p*W,y=s0+(H*.26-s0)*Math.pow(p.p,2)+Math.sin(t*.002+i)*3;glow(x,y,1.4,p.s%2?C:L,.1+p.p*.3);}}},
|
|
23
|
+
rails:{init:function(){pool(20,function(i){return{p:Math.random(),r:i%3,v:.002+Math.random()*.002};});},frame:function(){for(var r=0;r<3;r++){var ry=H*(.14+r*.09);line(0,ry,W,ry,C,.04);for(var c=1;c<4;c++)glow(W*c/4,ry,1.8,L,.18);}for(var i=0;i<P.length;i++){var p=P[i];p.p=(p.p+p.v)%1;glow(p.p*W,H*(.14+p.r*.09),1.4,L,.12+.3*Math.abs(Math.sin(p.p*12.56)));}}},
|
|
24
|
+
steps:{init:function(){},frame:function(){var on=Math.floor(t*.01)%8;for(var i=0;i<6;i++){var x=W*(.12+i*.15),y=H*.22+Math.sin(t*.0012+i)*6;ctx.strokeStyle=rgba(i<=on?L:C,i<=on?.3:.08);ctx.strokeRect(x-13,y-9,26,18);if(i<5)line(x+13,y,x+W*.15-13,y,C,.05);}}},
|
|
25
|
+
constellation:{init:function(){pool(22,function(){return{x:Math.random(),y:.08+Math.random()*.34,w:Math.random()*6.28};});},frame:function(){for(var i=0;i<P.length;i++){var p=P[i],x=p.x*W,y=p.y*H;glow(x,y,1.2,i%6?C:L,.1+.18*Math.abs(Math.sin(t*.01+p.w)));for(var j=i+1;j<P.length;j++){var q=P[j],dx=(q.x-p.x)*W,dy=(q.y-p.y)*H;if(dx*dx+dy*dy<5200)line(x,y,q.x*W,q.y*H,C,.025);}}}},
|
|
26
|
+
ripple:{init:function(){pool(5,function(i){return{x:.15+Math.random()*.7,y:.12+Math.random()*.25,ph:i*110};});},frame:function(){for(var i=0;i<P.length;i++){var p=P[i],r=((t+p.ph)%240)*.5,a=Math.max(0,.2-r*.0017);ctx.strokeStyle=rgba(i%2?L:C,a);ctx.beginPath();ctx.arc(p.x*W,p.y*H,r,0,7);ctx.stroke();glow(p.x*W,p.y*H,1.4,L,.18);}}},
|
|
27
|
+
// capability matrix — a lattice of cells that a scan wave lights lime as it sweeps
|
|
28
|
+
capabilities:{init:function(){pool(18,function(i){return{c:i%6,r:(i/6)|0,lit:0};});},frame:function(){var cols=6,x0=W*.1,x1=W*.9,y0=H*.12,gy=H*.07,wave=(t*.045)%(cols+4)-2;for(var i=0;i<P.length;i++){var p=P[i],cx=x0+(x1-x0)*(p.c/(cols-1)),cy=y0+gy*p.r,d=Math.abs(p.c-wave),col=(p.c+p.r)%5===0?C:L;p.lit+=((d<.85?1:0)-p.lit)*.16;ctx.strokeStyle=rgba(col,.06+.22*p.lit);ctx.lineWidth=1;ctx.strokeRect(cx-15,cy-10,30,20);if(p.lit>.04){ctx.fillStyle=rgba(col,.05*p.lit);ctx.fillRect(cx-15,cy-10,30,20);glow(cx,cy,1.4,col,.2+.4*p.lit);}else{dot(cx,cy,1,col,.12);}}}},
|
|
29
|
+
// entity chain — task -> run -> worktree -> PR -> done, with a packet that recolors per stage
|
|
30
|
+
entities:{init:function(){pool(5,function(i){return{x:.12+i*.18};});},frame:function(){var y=H*.2,hues=[[120,124,134],C,[170,210,120],[255,200,90],L];for(var i=0;i<P.length-1;i++)line(P[i].x*W,y,P[i+1].x*W,y,C,.05);for(var i=0;i<P.length;i++){var pl=.5+.5*Math.sin(t*.04+i);ctx.strokeStyle=rgba(i===P.length-1?L:C,.12);ctx.beginPath();ctx.arc(P[i].x*W,y,6,0,7);ctx.stroke();glow(P[i].x*W,y,2,i===P.length-1?L:C,.18+.18*pl);}var fp=(t*.004)%1,seg=Math.min(P.length-2,(fp*(P.length-1))|0),loc=(fp*(P.length-1))-seg,fx=(P[seg].x+(P[seg+1].x-P[seg].x)*loc)*W;glow(fx,y,2.2,hues[seg],.6);}},
|
|
31
|
+
// env stream — falling key=value glyph columns, restrained matrix-rain
|
|
32
|
+
env:{init:function(){pool(22,function(i){return{x:.06+(i/22)*.88,y:Math.random(),v:.0018+Math.random()*.0034,len:4+((Math.random()*5)|0),hue:i%4===0?C:L};});},frame:function(){for(var i=0;i<P.length;i++){var p=P[i];p.y+=p.v;if(p.y>1.15)p.y=-.12;var x=p.x*W,head=p.y*H*.42+H*.05;for(var k=0;k<p.len;k++){var yy=head-k*7;if(yy<0)continue;dot(x,yy,1,p.hue,(k===0?.5:.16)*(1-k/p.len));}if(head>0&&head<H*.5)glow(x,head,1.2,p.hue,.3);}}},
|
|
33
|
+
// plugin lab — package crates wired into one host bus
|
|
34
|
+
pluginlab:{init:function(){pool(9,function(i){return{a:(i/3)|0,b:i%3,p:Math.random()};});},frame:function(){var cx=W*.5,cy=H*.24;glow(cx,cy,2.4,L,.34);for(var i=0;i<P.length;i++){var p=P[i],x=W*(.18+p.b*.32),y=H*(.12+p.a*.07),col=p.a===1?L:C,lit=.5+.5*Math.sin(t*.018+i);ctx.strokeStyle=rgba(col,.07+.12*lit);ctx.strokeRect(x-22,y-12,44,24);line(x,y,cx,cy,col,.02+.03*lit);glow(x,y,1.5,col,.18+.2*lit);}}},
|
|
35
|
+
// agent tools — op cells lit by a typed dispatch scan
|
|
36
|
+
toolgrid:{init:function(){pool(30,function(i){return{c:i%10,r:(i/10)|0};});},frame:function(){var wave=(t*.055)%12;for(var i=0;i<P.length;i++){var p=P[i],x=W*(.08+p.c*.09),y=H*(.12+p.r*.08),d=Math.abs(p.c-wave),col=p.r%2?C:L,a=.06+(d<1?.35*(1-d):0);ctx.strokeStyle=rgba(col,a);ctx.strokeRect(x-13,y-8,26,16);if(d<.9)glow(x,y,1.5,col,.35);}}}
|
|
37
|
+
};
|
|
38
|
+
var sc=S[theme];if(!sc){return;}
|
|
39
|
+
size();sc.init&&sc.init();
|
|
40
|
+
if(matchMedia('(prefers-reduced-motion: reduce)').matches){t=400;sc.frame();return;}
|
|
41
|
+
var run=true;document.addEventListener('visibilitychange',function(){run=!document.hidden;if(run)requestAnimationFrame(lp);});
|
|
42
|
+
function lp(){if(!run)return;t++;ctx.clearRect(0,0,W,H);sc.frame();requestAnimationFrame(lp);}
|
|
43
|
+
lp();
|
|
44
|
+
};
|
|
45
|
+
})();
|
|
46
|
+
|
|
47
|
+
/* docs ambient orchestration field — quiet drone-lanes, same family as home, low density */
|
|
48
|
+
(function(){
|
|
49
|
+
var cv=document.getElementById('docfield'); if(!cv) return;
|
|
50
|
+
var th=document.body&&document.body.dataset.docTheme; if(th&&window.__rigThemedScene){window.__rigThemedScene(cv,th);return;}
|
|
51
|
+
var ctx=cv.getContext('2d'),W,H,DPR=Math.min(devicePixelRatio||1,2);
|
|
52
|
+
function size(){W=cv.clientWidth;H=cv.clientHeight;cv.width=W*DPR;cv.height=H*DPR;ctx.setTransform(DPR,0,0,DPR,0,0);}
|
|
53
|
+
addEventListener('resize',size);
|
|
54
|
+
var AC=[204,255,77],C2=[86,216,255],nodes=[],drones=[],t=0,sy=0;
|
|
55
|
+
addEventListener('scroll',function(){sy=scrollY;},{passive:true});
|
|
56
|
+
function init(){size();nodes=[];var N=6;for(var i=0;i<N;i++)nodes.push({bx:.08+.84*(i/(N-1)),by:.18+.12*Math.sin(i*1.3)});drones=[];for(var k=0;k<24;k++)spawn(true);}
|
|
57
|
+
function spawn(r){drones.push({seg:0,p:r?Math.random():0,spd:.0011+Math.random()*.0019,off:(Math.random()-.5)*40,sz:1+Math.random()*1.7,hue:Math.random()<.22?C2:AC,a:.12+Math.random()*.32});}
|
|
58
|
+
function np(i){var n=nodes[i];return{x:n.bx*W,y:n.by*H+Math.sin(t*.0006+i)*10 - sy*.02*(1-i/nodes.length)};}
|
|
59
|
+
function frame(){t++;ctx.clearRect(0,0,W,H);
|
|
60
|
+
ctx.lineWidth=1;
|
|
61
|
+
for(var i=0;i<nodes.length-1;i++){var a=np(i),b=np(i+1),g=ctx.createLinearGradient(a.x,a.y,b.x,b.y);g.addColorStop(0,'rgba(204,255,77,.06)');g.addColorStop(1,'rgba(86,216,255,.025)');ctx.strokeStyle=g;ctx.beginPath();ctx.moveTo(a.x,a.y);ctx.quadraticCurveTo((a.x+b.x)/2,(a.y+b.y)/2-26,b.x,b.y);ctx.stroke();}
|
|
62
|
+
for(var i=0;i<nodes.length;i++){var p=np(i),pl=.5+.5*Math.sin(t*.04+i);ctx.fillStyle='rgba(204,255,77,'+(.28*pl)+')';ctx.beginPath();ctx.arc(p.x,p.y,1.8,0,7);ctx.fill();}
|
|
63
|
+
for(var k=drones.length-1;k>=0;k--){var dr=drones[k];dr.p+=dr.spd;if(dr.p>=1){dr.seg++;dr.p=0;if(dr.seg>=nodes.length-1){drones.splice(k,1);spawn(0);continue;}}var a=np(dr.seg),b=np(dr.seg+1),mx=(a.x+b.x)/2,my=(a.y+b.y)/2-26,u=dr.p,iu=1-u;var x=iu*iu*a.x+2*iu*u*mx+u*u*b.x,y=iu*iu*a.y+2*iu*u*my+u*u*b.y+Math.sin(u*Math.PI)*dr.off*.3,c=dr.hue;ctx.fillStyle='rgba('+c[0]+','+c[1]+','+c[2]+','+dr.a+')';ctx.beginPath();ctx.arc(x,y,dr.sz,0,7);ctx.fill();ctx.fillStyle='rgba('+c[0]+','+c[1]+','+c[2]+','+(dr.a*.12)+')';ctx.beginPath();ctx.arc(x,y,dr.sz*3,0,7);ctx.fill();}
|
|
64
|
+
requestAnimationFrame(frame);}
|
|
65
|
+
init();frame();
|
|
66
|
+
})();
|