wao 0.41.3 → 0.41.5

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.
Files changed (719) hide show
  1. package/.babelrc-cjs +5 -0
  2. package/.babelrc-esm +5 -0
  3. package/.gitmodules +4 -0
  4. package/.prettierrc +6 -0
  5. package/README.md +90 -0
  6. package/app/.eslintrc.json +3 -0
  7. package/app/.mocharc.cjs +6 -0
  8. package/app/arweave.mjs +87 -0
  9. package/app/components/Footer.js +76 -0
  10. package/app/components/Global.js +1128 -0
  11. package/app/components/Header.js +306 -0
  12. package/app/components/Left.js +28 -0
  13. package/app/components/Logo.js +34 -0
  14. package/app/components/Middle.js +37 -0
  15. package/app/components/Sidebar.js +93 -0
  16. package/app/components/Tags.js +42 -0
  17. package/app/components/editor/Editor.js +322 -0
  18. package/app/components/editor/FilePath.js +42 -0
  19. package/app/components/editor/MonacoEditor.js +44 -0
  20. package/app/components/left/LeftMessages.js +85 -0
  21. package/app/components/left/LeftModules.js +86 -0
  22. package/app/components/left/LeftNetworks.js +438 -0
  23. package/app/components/left/LeftProcesses.js +98 -0
  24. package/app/components/left/LeftProjects.js +397 -0
  25. package/app/components/left/LeftTests.js +189 -0
  26. package/app/components/middle/MiddleBlocks.js +79 -0
  27. package/app/components/middle/MiddleEntity.js +16 -0
  28. package/app/components/middle/MiddleEntityAccount.js +264 -0
  29. package/app/components/middle/MiddleEntityAssignment.js +104 -0
  30. package/app/components/middle/MiddleEntityBlock.js +148 -0
  31. package/app/components/middle/MiddleEntityMessage.js +430 -0
  32. package/app/components/middle/MiddleEntityModule.js +183 -0
  33. package/app/components/middle/MiddleEntityProcess.js +323 -0
  34. package/app/components/middle/MiddleEntityTx.js +211 -0
  35. package/app/components/middle/MiddleMessages.js +87 -0
  36. package/app/components/middle/MiddleModules.js +89 -0
  37. package/app/components/middle/MiddleNetworks.js +516 -0
  38. package/app/components/middle/MiddleProcesses.js +87 -0
  39. package/app/components/middle/MiddleTests.js +134 -0
  40. package/app/components/modals/CreateFileModal.js +115 -0
  41. package/app/components/modals/CreateFolderModal.js +83 -0
  42. package/app/components/modals/CreateProjectModal.js +63 -0
  43. package/app/components/modals/FSModal.js +141 -0
  44. package/app/components/modals/ImportModal.js +105 -0
  45. package/app/components/modals/LaunchNetworkModal.js +95 -0
  46. package/app/components/modals/Modal.js +38 -0
  47. package/app/components/modals/ProxyModal.js +122 -0
  48. package/app/components/modals/RenameFileModal.js +95 -0
  49. package/app/components/styles/EditorScrollbarStyle.js +29 -0
  50. package/app/components/styles/EntityScrollbarStyle.js +29 -0
  51. package/app/components/styles/GlobalStyle.js +102 -0
  52. package/app/components/styles/XtermStyle.js +37 -0
  53. package/app/components/terminal/Terminal.js +132 -0
  54. package/app/components/terminal/Xterm.js +160 -0
  55. package/app/components/ui/avatar.jsx +49 -0
  56. package/app/components/ui/checkbox.jsx +17 -0
  57. package/app/components/ui/close-button.jsx +20 -0
  58. package/app/components/ui/color-mode.jsx +61 -0
  59. package/app/components/ui/dialog.jsx +54 -0
  60. package/app/components/ui/drawer.jsx +44 -0
  61. package/app/components/ui/field.jsx +22 -0
  62. package/app/components/ui/input-group.jsx +39 -0
  63. package/app/components/ui/popover.jsx +49 -0
  64. package/app/components/ui/provider.jsx +12 -0
  65. package/app/components/ui/radio.jsx +17 -0
  66. package/app/components/ui/slider.jsx +107 -0
  67. package/app/components/ui/toaster.jsx +69 -0
  68. package/app/components/ui/tooltip.jsx +35 -0
  69. package/app/index.js +10 -0
  70. package/app/jsconfig.json +7 -0
  71. package/app/lib/GithubCSS.js +1218 -0
  72. package/app/lib/addon-fit.js +72 -0
  73. package/app/lib/data.js +31 -0
  74. package/app/lib/github-markdown.css +1169 -0
  75. package/app/lib/global.js +1 -0
  76. package/app/lib/guide.js +82 -0
  77. package/app/lib/hub.js +109 -0
  78. package/app/lib/scripts.js +47 -0
  79. package/app/lib/store.js +34 -0
  80. package/app/lib/use.js +64 -0
  81. package/app/lib/utils.js +387 -0
  82. package/app/lib/webrtc.js +217 -0
  83. package/app/next.config.js +25 -0
  84. package/app/package.json +62 -0
  85. package/app/pages/404.js +9 -0
  86. package/app/pages/_app.js +10 -0
  87. package/app/pages/_document.js +14 -0
  88. package/app/pages/index.js +121 -0
  89. package/app/playwright.config.mjs +41 -0
  90. package/app/proxy.mjs +21 -0
  91. package/app/public/assets/cover.png +0 -0
  92. package/app/public/blueprints/apm.lua +91 -0
  93. package/app/public/blueprints/arena.lua +345 -0
  94. package/app/public/blueprints/arns.lua +318 -0
  95. package/app/public/blueprints/chat.lua +210 -0
  96. package/app/public/blueprints/chatroom.lua +56 -0
  97. package/app/public/blueprints/patch-legacy-reply.lua +13 -0
  98. package/app/public/blueprints/staking.lua +93 -0
  99. package/app/public/blueprints/token.lua +298 -0
  100. package/app/public/blueprints/voting.lua +45 -0
  101. package/app/public/favicon.ico +0 -0
  102. package/app/public/logo.png +0 -0
  103. package/cli-esm.js +55 -0
  104. package/cli.js +54 -0
  105. package/devnet/app/api.js +129 -0
  106. package/devnet/app/components/layout.js +89 -0
  107. package/devnet/app/components/pagination.js +144 -0
  108. package/devnet/app/components/search.js +159 -0
  109. package/devnet/app/components/table.js +124 -0
  110. package/devnet/app/components/tags.js +89 -0
  111. package/devnet/app/index.html +14 -0
  112. package/devnet/app/main.js +215 -0
  113. package/devnet/app/router.js +59 -0
  114. package/devnet/app/state.js +19 -0
  115. package/devnet/app/style.css +1606 -0
  116. package/devnet/app/utils.js +77 -0
  117. package/devnet/app/views/blocks.js +75 -0
  118. package/devnet/app/views/dashboard.js +127 -0
  119. package/devnet/app/views/entity.js +1473 -0
  120. package/devnet/app/views/messages.js +90 -0
  121. package/devnet/app/views/modules.js +165 -0
  122. package/devnet/app/views/processes.js +90 -0
  123. package/devnet/app/views/schedulers.js +90 -0
  124. package/devnet/app/views/transactions.js +88 -0
  125. package/devnet/migrations/0001_initial.sql +51 -0
  126. package/devnet/package.json +26 -0
  127. package/devnet/playwright.config.js +7 -0
  128. package/devnet/src/cu-worker.js +166 -0
  129. package/devnet/src/index.js +309 -0
  130. package/devnet/vite.config.js +17 -0
  131. package/devnet/vitest.config.js +10 -0
  132. package/devnet/wrangler-cu.toml +32 -0
  133. package/devnet/wrangler.toml +38 -0
  134. package/dhfs-tutorial-app/package.json +15 -0
  135. package/dist/esm/workspace/dashboard/public/favicon.png +0 -0
  136. package/dist/esm/workspace/src/counter.lua +14 -0
  137. package/dist/package.json +82 -0
  138. package/hb.sh +18 -0
  139. package/hbsig/.babelrc-cjs +5 -0
  140. package/hbsig/.babelrc-esm +5 -0
  141. package/hbsig/README.md +1 -0
  142. package/hbsig/dist/cjs/bin_to_str.js +44 -0
  143. package/hbsig/dist/cjs/collect-body-keys.js +470 -0
  144. package/hbsig/dist/cjs/commit.js +330 -0
  145. package/hbsig/dist/cjs/encode-array-item.js +110 -0
  146. package/hbsig/dist/cjs/encode-utils.js +242 -0
  147. package/hbsig/dist/cjs/encode.js +1365 -0
  148. package/hbsig/dist/cjs/erl_json.js +326 -0
  149. package/hbsig/dist/cjs/erl_str.js +1042 -0
  150. package/hbsig/dist/cjs/flat.js +279 -0
  151. package/hbsig/dist/cjs/http-message-signatures/httpbis.js +489 -0
  152. package/hbsig/dist/cjs/http-message-signatures/index.js +25 -0
  153. package/hbsig/dist/cjs/http-message-signatures/structured-header.js +129 -0
  154. package/hbsig/dist/cjs/httpsig.js +861 -0
  155. package/hbsig/dist/cjs/id.js +470 -0
  156. package/hbsig/dist/cjs/index.js +174 -0
  157. package/hbsig/dist/cjs/nocrypto.js +51 -0
  158. package/hbsig/dist/cjs/parser.js +201 -0
  159. package/hbsig/dist/cjs/send-utils.js +1231 -0
  160. package/hbsig/dist/cjs/send.js +211 -0
  161. package/hbsig/dist/cjs/signer-utils.js +494 -0
  162. package/hbsig/dist/cjs/signer.js +436 -0
  163. package/hbsig/dist/cjs/structured.js +515 -0
  164. package/hbsig/dist/cjs/test.js +12 -0
  165. package/hbsig/dist/cjs/utils.js +44 -0
  166. package/hbsig/dist/esm/bin_to_str.js +46 -0
  167. package/hbsig/dist/esm/collect-body-keys.js +436 -0
  168. package/hbsig/dist/esm/commit.js +219 -0
  169. package/hbsig/dist/esm/encode-array-item.js +112 -0
  170. package/hbsig/dist/esm/encode-utils.js +191 -0
  171. package/hbsig/dist/esm/encode.js +1256 -0
  172. package/hbsig/dist/esm/erl_json.js +292 -0
  173. package/hbsig/dist/esm/erl_str.js +1144 -0
  174. package/hbsig/dist/esm/flat.js +250 -0
  175. package/hbsig/dist/esm/http-message-signatures/httpbis.js +438 -0
  176. package/hbsig/dist/esm/http-message-signatures/index.js +4 -0
  177. package/hbsig/dist/esm/http-message-signatures/structured-header.js +105 -0
  178. package/hbsig/dist/esm/httpsig.js +866 -0
  179. package/hbsig/dist/esm/id.js +459 -0
  180. package/hbsig/dist/esm/index.js +13 -0
  181. package/hbsig/dist/esm/nocrypto.js +4 -0
  182. package/hbsig/dist/esm/package.json +3 -0
  183. package/hbsig/dist/esm/parser.js +171 -0
  184. package/hbsig/dist/esm/send-utils.js +1132 -0
  185. package/hbsig/dist/esm/send.js +142 -0
  186. package/hbsig/dist/esm/signer-utils.js +375 -0
  187. package/hbsig/dist/esm/signer.js +312 -0
  188. package/hbsig/dist/esm/structured.js +496 -0
  189. package/hbsig/dist/esm/test.js +2 -0
  190. package/hbsig/dist/esm/utils.js +29 -0
  191. package/hbsig/dist/package.json +39 -0
  192. package/hbsig/make.js +36 -0
  193. package/hbsig/package.json +39 -0
  194. package/hbsig/src/bin_to_str.js +46 -0
  195. package/hbsig/src/collect-body-keys.js +436 -0
  196. package/hbsig/src/commit.js +219 -0
  197. package/hbsig/src/encode-array-item.js +112 -0
  198. package/hbsig/src/encode-utils.js +191 -0
  199. package/hbsig/src/encode.js +1256 -0
  200. package/hbsig/src/erl_json.js +292 -0
  201. package/hbsig/src/erl_str.js +1144 -0
  202. package/hbsig/src/flat.js +250 -0
  203. package/hbsig/src/http-message-signatures/httpbis.js +438 -0
  204. package/hbsig/src/http-message-signatures/index.js +4 -0
  205. package/hbsig/src/http-message-signatures/structured-header.js +105 -0
  206. package/hbsig/src/httpsig.js +866 -0
  207. package/hbsig/src/id.js +459 -0
  208. package/hbsig/src/index.js +13 -0
  209. package/hbsig/src/nocrypto.js +4 -0
  210. package/hbsig/src/parser.js +171 -0
  211. package/hbsig/src/send-utils.js +1132 -0
  212. package/hbsig/src/send.js +142 -0
  213. package/hbsig/src/signer-utils.js +375 -0
  214. package/hbsig/src/signer.js +312 -0
  215. package/hbsig/src/structured.js +496 -0
  216. package/hbsig/src/test.js +2 -0
  217. package/hbsig/src/utils.js +29 -0
  218. package/lp/index.html +25 -0
  219. package/lp/package.json +19 -0
  220. package/lp/public/cover.png +0 -0
  221. package/lp/public/favicon.ico +0 -0
  222. package/lp/public/favicon.png +0 -0
  223. package/lp/public/images/book.jpg +0 -0
  224. package/lp/public/images/dashboard.png +0 -0
  225. package/lp/public/images/devnet.png +0 -0
  226. package/lp/public/images/hero-bg.png +0 -0
  227. package/lp/public/images/hyperadd.png +0 -0
  228. package/lp/public/images/message-flow.png +0 -0
  229. package/lp/public/images/mobile.png +0 -0
  230. package/lp/public/images/og-cover.png +0 -0
  231. package/lp/public/images/scan.png +0 -0
  232. package/lp/public/images/wao-hub.png +0 -0
  233. package/lp/public/images/wao-web.png +0 -0
  234. package/lp/public/logo.png +0 -0
  235. package/lp/src/App.jsx +29 -0
  236. package/lp/src/components/CodeBlock.jsx +37 -0
  237. package/lp/src/components/CodeBlock.module.css +89 -0
  238. package/lp/src/components/Footer.jsx +22 -0
  239. package/lp/src/components/Footer.module.css +60 -0
  240. package/lp/src/components/Nav.jsx +80 -0
  241. package/lp/src/components/Nav.module.css +177 -0
  242. package/lp/src/components/SectionWrapper.jsx +15 -0
  243. package/lp/src/hooks/useReveal.js +25 -0
  244. package/lp/src/hooks/useScrolled.js +14 -0
  245. package/lp/src/main.jsx +10 -0
  246. package/lp/src/sections/Book.jsx +60 -0
  247. package/lp/src/sections/Book.module.css +204 -0
  248. package/lp/src/sections/Browser.jsx +46 -0
  249. package/lp/src/sections/Browser.module.css +67 -0
  250. package/lp/src/sections/Devnet.jsx +55 -0
  251. package/lp/src/sections/Devnet.module.css +136 -0
  252. package/lp/src/sections/GetStarted.jsx +51 -0
  253. package/lp/src/sections/GetStarted.module.css +128 -0
  254. package/lp/src/sections/Hero.jsx +67 -0
  255. package/lp/src/sections/Hero.module.css +202 -0
  256. package/lp/src/sections/HyperADD.jsx +46 -0
  257. package/lp/src/sections/HyperADD.module.css +113 -0
  258. package/lp/src/sections/SDK.jsx +90 -0
  259. package/lp/src/sections/SDK.module.css +122 -0
  260. package/lp/src/sections/Testing.jsx +47 -0
  261. package/lp/src/sections/Testing.module.css +124 -0
  262. package/lp/src/sections/Vision.jsx +93 -0
  263. package/lp/src/sections/Vision.module.css +147 -0
  264. package/lp/src/styles/globals.css +285 -0
  265. package/lp/src/utils/scrollTo.js +4 -0
  266. package/lp/vite.config.js +7 -0
  267. package/make.js +39 -0
  268. package/package.json +17 -12
  269. package/patches/@permaweb+ao-loader+0.0.44.patch +64 -0
  270. package/plan.md +435 -0
  271. package/rebar.lock +1 -0
  272. package/src/accounts-web.js +128 -0
  273. package/src/accounts.js +124 -0
  274. package/src/adaptor-base.js +622 -0
  275. package/src/adaptor-cf.js +11 -0
  276. package/src/adaptor-web.js +11 -0
  277. package/src/adaptor.js +10 -0
  278. package/src/ao-loader.js +30660 -0
  279. package/src/ao.js +1173 -0
  280. package/src/aoconnect-base.js +1098 -0
  281. package/src/aoconnect-cf.js +9 -0
  282. package/src/aoconnect-web.js +8 -0
  283. package/src/aoconnect.js +8 -0
  284. package/src/aos_wamr.js +1 -0
  285. package/src/ar-remote.js +87 -0
  286. package/src/ar.js +276 -0
  287. package/src/armem-base.js +529 -0
  288. package/src/armem-cf.js +67 -0
  289. package/src/armem-web.js +19 -0
  290. package/src/armem.js +26 -0
  291. package/src/bao.js +141 -0
  292. package/src/bar.js +366 -0
  293. package/src/build.js +7 -0
  294. package/src/bundler.js +119 -0
  295. package/src/car.js +10 -0
  296. package/src/cf-env.js +29 -0
  297. package/src/cf.js +11 -0
  298. package/src/cli.js +561 -0
  299. package/src/compress.js +112 -0
  300. package/src/create.js +415 -0
  301. package/src/devs.js +86 -0
  302. package/src/dirname.js +1 -0
  303. package/src/dodb.js +26 -0
  304. package/src/erl_json.js +289 -0
  305. package/src/erl_str.js +1139 -0
  306. package/src/gql.js +229 -0
  307. package/src/hb.js +967 -0
  308. package/src/helpers.js +203 -0
  309. package/src/http.js +619 -0
  310. package/src/hub/bundler.js +123 -0
  311. package/src/hub/cu.js +74 -0
  312. package/src/hub/fs.js +157 -0
  313. package/src/hub/index.js +85 -0
  314. package/src/hub/utils.js +64 -0
  315. package/src/hub/ws-proxy.js +67 -0
  316. package/src/hyper-aos.js +1 -0
  317. package/src/hyperbeam-server.js +21 -0
  318. package/src/hyperbeam.js +585 -0
  319. package/src/index.js +5 -0
  320. package/src/keygen.js +47 -0
  321. package/src/lfdb.js +67 -0
  322. package/src/lua/aos.wasm +0 -0
  323. package/src/lua/aos2_0_1.js +1 -0
  324. package/src/lua/aos2_0_1.wasm +0 -0
  325. package/src/lua/aos2_0_3.js +1 -0
  326. package/src/lua/aos2_0_3.wasm +0 -0
  327. package/src/lua/aos2_0_4_32.js +1 -0
  328. package/src/lua/aos2_0_4_32.wasm +0 -0
  329. package/src/lua/aos2_0_6.wasm +0 -0
  330. package/src/lua/apm.lua +61 -0
  331. package/src/lua/llama.wasm +0 -0
  332. package/src/lua/process.wasm +0 -0
  333. package/src/lua/sqlite.js +1 -0
  334. package/src/lua/sqlite.wasm +0 -0
  335. package/src/lua/weavedb_mock.lua +44 -0
  336. package/src/lua/weavedrive.lua +53 -0
  337. package/src/run.js +25 -0
  338. package/src/server.js +173 -0
  339. package/src/storage-multi.js +183 -0
  340. package/src/tao.js +12 -0
  341. package/src/tar.js +10 -0
  342. package/src/test.js +42 -0
  343. package/src/tgql-d1.js +407 -0
  344. package/src/tgql.js +310 -0
  345. package/src/toerl.js +162 -0
  346. package/src/utils.js +777 -0
  347. package/src/wao.js +29 -0
  348. package/src/waosm/README.md +81 -0
  349. package/src/waosm/waosm.d.ts +40 -0
  350. package/src/waosm/waosm.js +240 -0
  351. package/src/waosm/waosm_bg.wasm +0 -0
  352. package/src/waosm/waosm_bg.wasm.d.ts +8 -0
  353. package/src/waosm-node/README.md +81 -0
  354. package/src/waosm-node/waosm.d.ts +8 -0
  355. package/src/waosm-node/waosm.js +4 -0
  356. package/src/waosm-node/waosm_bg.js +147 -0
  357. package/src/waosm-node/waosm_bg.wasm +0 -0
  358. package/src/waosm-node/waosm_bg.wasm.d.ts +8 -0
  359. package/src/waosm-node/waosm_bg.wasm.js +14 -0
  360. package/src/waosm-node.js +9 -0
  361. package/src/war.js +10 -0
  362. package/src/weavedrive.js +376 -0
  363. package/src/web.js +11 -0
  364. package/src/workspace/.mcp.json +8 -0
  365. package/src/workspace/CLAUDE.md +258 -0
  366. package/src/workspace/README.md +85 -0
  367. package/src/workspace/dashboard/index.html +163 -0
  368. package/src/workspace/dashboard/package.json +18 -0
  369. package/src/workspace/dashboard/public/favicon.ico +0 -0
  370. package/src/workspace/dashboard/public/favicon.png +0 -0
  371. package/src/workspace/dashboard/server.js +224 -0
  372. package/src/workspace/dashboard/src/App.jsx +2350 -0
  373. package/{cjs/workspace/frontend → src/workspace/dashboard}/vite.config.js +6 -0
  374. package/src/workspace/package.json +18 -0
  375. package/src/workspace/src/counter.lua +14 -0
  376. package/tsconfig.json +18 -0
  377. package/types/index.d.ts +329 -0
  378. package/waollama/.eslintrc.json +3 -0
  379. package/waollama/README.md +19 -0
  380. package/waollama/arweave.mjs +87 -0
  381. package/waollama/components/ui/avatar.jsx +49 -0
  382. package/waollama/components/ui/checkbox.jsx +17 -0
  383. package/waollama/components/ui/close-button.jsx +20 -0
  384. package/waollama/components/ui/color-mode.jsx +61 -0
  385. package/waollama/components/ui/dialog.jsx +54 -0
  386. package/waollama/components/ui/drawer.jsx +44 -0
  387. package/waollama/components/ui/field.jsx +22 -0
  388. package/waollama/components/ui/input-group.jsx +39 -0
  389. package/waollama/components/ui/popover.jsx +49 -0
  390. package/waollama/components/ui/provider.jsx +12 -0
  391. package/waollama/components/ui/radio.jsx +17 -0
  392. package/waollama/components/ui/slider.jsx +107 -0
  393. package/waollama/components/ui/tooltip.jsx +35 -0
  394. package/waollama/index.js +10 -0
  395. package/waollama/jsconfig.json +7 -0
  396. package/waollama/lib/ao-loader.js +30654 -0
  397. package/waollama/lib/client.js +1 -0
  398. package/waollama/lib/wasm.js +1 -0
  399. package/waollama/next.config.js +25 -0
  400. package/waollama/package.json +43 -0
  401. package/waollama/pages/404.js +9 -0
  402. package/waollama/pages/_app.js +9 -0
  403. package/waollama/pages/_document.js +14 -0
  404. package/waollama/pages/index.js +212 -0
  405. package/waollama/playwright.config.js +31 -0
  406. package/waollama/proxy.mjs +21 -0
  407. package/waollama/public/favicon.ico +0 -0
  408. package/waollama/public/human.png +0 -0
  409. package/waollama/public/llama.png +0 -0
  410. package/waosm/Cargo.toml +11 -0
  411. package/waosm/README.md +81 -0
  412. package/waosm/compress.js +112 -0
  413. package/waosm/make.js +33 -0
  414. package/waosm/package.json +10 -0
  415. package/waosm/src/lib.rs +180 -0
  416. package/waosm/test.js +16 -0
  417. package/cjs/workspace/.claude/agents/builder.md +0 -99
  418. package/cjs/workspace/.claude/agents/device-builder.md +0 -86
  419. package/cjs/workspace/.claude/agents/tester.md +0 -90
  420. package/cjs/workspace/.claude/mcp/dashboard/server.js +0 -128
  421. package/cjs/workspace/.claude/rules/deploy.md +0 -45
  422. package/cjs/workspace/.claude/rules/frontend.md +0 -69
  423. package/cjs/workspace/.claude/rules/hyperbeam.md +0 -104
  424. package/cjs/workspace/.claude/rules/lua.md +0 -108
  425. package/cjs/workspace/.claude/rules/testing.md +0 -257
  426. package/cjs/workspace/.claude/settings.json +0 -109
  427. package/cjs/workspace/.claude/skills/build/SKILL.md +0 -214
  428. package/cjs/workspace/.claude/skills/build-aos/SKILL.md +0 -129
  429. package/cjs/workspace/.claude/skills/build-device/SKILL.md +0 -192
  430. package/cjs/workspace/.claude/skills/build-frontend/SKILL.md +0 -134
  431. package/cjs/workspace/.claude/skills/build-module/SKILL.md +0 -281
  432. package/cjs/workspace/.claude/skills/create-aos/SKILL.md +0 -63
  433. package/cjs/workspace/.claude/skills/create-device/SKILL.md +0 -87
  434. package/cjs/workspace/.claude/skills/create-module/SKILL.md +0 -162
  435. package/cjs/workspace/.claude/skills/debug/SKILL.md +0 -57
  436. package/cjs/workspace/.claude/skills/deploy/SKILL.md +0 -85
  437. package/cjs/workspace/.claude/skills/dev/SKILL.md +0 -32
  438. package/cjs/workspace/.claude/skills/plan/SKILL.md +0 -176
  439. package/cjs/workspace/.claude/skills/readme/SKILL.md +0 -186
  440. package/cjs/workspace/.claude/skills/report/SKILL.md +0 -49
  441. package/cjs/workspace/.claude/skills/team/SKILL.md +0 -101
  442. package/cjs/workspace/.claude/skills/test/SKILL.md +0 -56
  443. package/cjs/workspace/.claude/skills/test-device/SKILL.md +0 -114
  444. package/cjs/workspace/.claude/skills/test-e2e/SKILL.md +0 -103
  445. package/cjs/workspace/.claude/skills/test-hb/SKILL.md +0 -76
  446. package/cjs/workspace/.claude/skills/validate/SKILL.md +0 -96
  447. package/cjs/workspace/.claude/skills/validate/scripts/check-lua.sh +0 -41
  448. package/cjs/workspace/docs/aos-lua.md +0 -428
  449. package/cjs/workspace/docs/debug.md +0 -230
  450. package/cjs/workspace/docs/hyperbeam-dev.md +0 -606
  451. package/cjs/workspace/docs/hyperbeam-devices.md +0 -618
  452. package/cjs/workspace/docs/wao-sdk.md +0 -807
  453. package/cjs/workspace/frontend/e2e/.gitkeep +0 -0
  454. package/cjs/workspace/frontend/index.html +0 -12
  455. package/cjs/workspace/frontend/package.json +0 -24
  456. package/cjs/workspace/frontend/playwright.config.js +0 -10
  457. package/cjs/workspace/frontend/src/App.jsx +0 -24
  458. package/cjs/workspace/frontend/test/.gitkeep +0 -0
  459. package/cjs/workspace/frontend/vitest.config.js +0 -10
  460. package/cjs/workspace/scripts/deploy.js +0 -140
  461. package/cjs/workspace/scripts/keygen.js +0 -52
  462. package/cjs/workspace/test/aos.test.js +0 -98
  463. package/cjs/workspace/test/hyperbeam.test.js +0 -80
  464. package/esm/compiler/native +0 -0
  465. package/esm/workspace/.claude/agents/builder.md +0 -99
  466. package/esm/workspace/.claude/agents/device-builder.md +0 -86
  467. package/esm/workspace/.claude/agents/tester.md +0 -90
  468. package/esm/workspace/.claude/mcp/dashboard/server.js +0 -128
  469. package/esm/workspace/.claude/rules/deploy.md +0 -45
  470. package/esm/workspace/.claude/rules/frontend.md +0 -69
  471. package/esm/workspace/.claude/rules/hyperbeam.md +0 -104
  472. package/esm/workspace/.claude/rules/lua.md +0 -108
  473. package/esm/workspace/.claude/rules/testing.md +0 -257
  474. package/esm/workspace/.claude/settings.json +0 -109
  475. package/esm/workspace/.claude/skills/build/SKILL.md +0 -214
  476. package/esm/workspace/.claude/skills/build-aos/SKILL.md +0 -129
  477. package/esm/workspace/.claude/skills/build-device/SKILL.md +0 -192
  478. package/esm/workspace/.claude/skills/build-frontend/SKILL.md +0 -134
  479. package/esm/workspace/.claude/skills/build-module/SKILL.md +0 -281
  480. package/esm/workspace/.claude/skills/create-aos/SKILL.md +0 -63
  481. package/esm/workspace/.claude/skills/create-device/SKILL.md +0 -87
  482. package/esm/workspace/.claude/skills/create-module/SKILL.md +0 -162
  483. package/esm/workspace/.claude/skills/debug/SKILL.md +0 -57
  484. package/esm/workspace/.claude/skills/deploy/SKILL.md +0 -85
  485. package/esm/workspace/.claude/skills/dev/SKILL.md +0 -32
  486. package/esm/workspace/.claude/skills/plan/SKILL.md +0 -176
  487. package/esm/workspace/.claude/skills/readme/SKILL.md +0 -186
  488. package/esm/workspace/.claude/skills/report/SKILL.md +0 -49
  489. package/esm/workspace/.claude/skills/team/SKILL.md +0 -101
  490. package/esm/workspace/.claude/skills/test/SKILL.md +0 -56
  491. package/esm/workspace/.claude/skills/test-device/SKILL.md +0 -114
  492. package/esm/workspace/.claude/skills/test-e2e/SKILL.md +0 -103
  493. package/esm/workspace/.claude/skills/test-hb/SKILL.md +0 -76
  494. package/esm/workspace/.claude/skills/validate/SKILL.md +0 -96
  495. package/esm/workspace/.claude/skills/validate/scripts/check-lua.sh +0 -41
  496. package/esm/workspace/docs/aos-lua.md +0 -428
  497. package/esm/workspace/docs/debug.md +0 -230
  498. package/esm/workspace/docs/hyperbeam-dev.md +0 -606
  499. package/esm/workspace/docs/hyperbeam-devices.md +0 -618
  500. package/esm/workspace/docs/wao-sdk.md +0 -807
  501. package/esm/workspace/frontend/e2e/.gitkeep +0 -0
  502. package/esm/workspace/frontend/index.html +0 -12
  503. package/esm/workspace/frontend/package.json +0 -24
  504. package/esm/workspace/frontend/playwright.config.js +0 -10
  505. package/esm/workspace/frontend/src/App.jsx +0 -24
  506. package/esm/workspace/frontend/src/main.jsx +0 -9
  507. package/esm/workspace/frontend/test/.gitkeep +0 -0
  508. package/esm/workspace/frontend/vite.config.js +0 -6
  509. package/esm/workspace/frontend/vitest.config.js +0 -10
  510. package/esm/workspace/scripts/deploy.js +0 -140
  511. package/esm/workspace/scripts/keygen.js +0 -52
  512. package/esm/workspace/test/aos.test.js +0 -98
  513. package/esm/workspace/test/hyperbeam.test.js +0 -80
  514. /package/{cjs/workspace/dashboard/public → devnet/app}/favicon.ico +0 -0
  515. /package/{cjs/workspace → dhfs-tutorial-app}/src/counter.lua +0 -0
  516. /package/{cjs → dist/cjs}/accounts-web.js +0 -0
  517. /package/{cjs → dist/cjs}/accounts.js +0 -0
  518. /package/{cjs → dist/cjs}/adaptor-base.js +0 -0
  519. /package/{cjs → dist/cjs}/adaptor-cf.js +0 -0
  520. /package/{cjs → dist/cjs}/adaptor-web.js +0 -0
  521. /package/{cjs → dist/cjs}/adaptor.js +0 -0
  522. /package/{cjs → dist/cjs}/ao-loader.js +0 -0
  523. /package/{cjs → dist/cjs}/ao.js +0 -0
  524. /package/{cjs → dist/cjs}/aoconnect-base.js +0 -0
  525. /package/{cjs → dist/cjs}/aoconnect-cf.js +0 -0
  526. /package/{cjs → dist/cjs}/aoconnect-web.js +0 -0
  527. /package/{cjs → dist/cjs}/aoconnect.js +0 -0
  528. /package/{cjs → dist/cjs}/aos_wamr.js +0 -0
  529. /package/{cjs → dist/cjs}/ar-remote.js +0 -0
  530. /package/{cjs → dist/cjs}/ar.js +0 -0
  531. /package/{cjs → dist/cjs}/armem-base.js +0 -0
  532. /package/{cjs → dist/cjs}/armem-cf.js +0 -0
  533. /package/{cjs → dist/cjs}/armem-web.js +0 -0
  534. /package/{cjs → dist/cjs}/armem.js +0 -0
  535. /package/{cjs → dist/cjs}/bao.js +0 -0
  536. /package/{cjs → dist/cjs}/bar.js +0 -0
  537. /package/{cjs → dist/cjs}/build.js +0 -0
  538. /package/{cjs → dist/cjs}/bundler.js +0 -0
  539. /package/{cjs → dist/cjs}/car.js +0 -0
  540. /package/{cjs → dist/cjs}/cf-env.js +0 -0
  541. /package/{cjs → dist/cjs}/cf.js +0 -0
  542. /package/{cjs → dist/cjs}/cli.js +0 -0
  543. /package/{cjs → dist/cjs}/compress.js +0 -0
  544. /package/{cjs → dist/cjs}/create.js +0 -0
  545. /package/{cjs → dist/cjs}/devs.js +0 -0
  546. /package/{cjs → dist/cjs}/dirname.js +0 -0
  547. /package/{cjs → dist/cjs}/dodb.js +0 -0
  548. /package/{cjs → dist/cjs}/erl_json.js +0 -0
  549. /package/{cjs → dist/cjs}/erl_str.js +0 -0
  550. /package/{cjs → dist/cjs}/gql.js +0 -0
  551. /package/{cjs → dist/cjs}/hb.js +0 -0
  552. /package/{cjs → dist/cjs}/helpers.js +0 -0
  553. /package/{cjs → dist/cjs}/http.js +0 -0
  554. /package/{cjs → dist/cjs}/hub/bundler.js +0 -0
  555. /package/{cjs → dist/cjs}/hub/cu.js +0 -0
  556. /package/{cjs → dist/cjs}/hub/fs.js +0 -0
  557. /package/{cjs → dist/cjs}/hub/index.js +0 -0
  558. /package/{cjs → dist/cjs}/hub/utils.js +0 -0
  559. /package/{cjs → dist/cjs}/hub/ws-proxy.js +0 -0
  560. /package/{cjs → dist/cjs}/hyper-aos.js +0 -0
  561. /package/{cjs → dist/cjs}/hyperbeam-server.js +0 -0
  562. /package/{cjs → dist/cjs}/hyperbeam.js +0 -0
  563. /package/{cjs → dist/cjs}/index.js +0 -0
  564. /package/{cjs → dist/cjs}/keygen.js +0 -0
  565. /package/{cjs → dist/cjs}/lfdb.js +0 -0
  566. /package/{cjs → dist/cjs}/lua/aos.wasm +0 -0
  567. /package/{cjs → dist/cjs}/lua/aos2_0_1.js +0 -0
  568. /package/{cjs → dist/cjs}/lua/aos2_0_1.wasm +0 -0
  569. /package/{cjs → dist/cjs}/lua/aos2_0_3.js +0 -0
  570. /package/{cjs → dist/cjs}/lua/aos2_0_3.wasm +0 -0
  571. /package/{cjs → dist/cjs}/lua/aos2_0_4_32.js +0 -0
  572. /package/{cjs → dist/cjs}/lua/aos2_0_4_32.wasm +0 -0
  573. /package/{cjs → dist/cjs}/lua/aos2_0_6.wasm +0 -0
  574. /package/{cjs → dist/cjs}/lua/apm.lua +0 -0
  575. /package/{cjs → dist/cjs}/lua/llama.wasm +0 -0
  576. /package/{cjs → dist/cjs}/lua/process.wasm +0 -0
  577. /package/{cjs → dist/cjs}/lua/sqlite.js +0 -0
  578. /package/{cjs → dist/cjs}/lua/sqlite.wasm +0 -0
  579. /package/{cjs → dist/cjs}/lua/weavedb_mock.lua +0 -0
  580. /package/{cjs → dist/cjs}/lua/weavedrive.lua +0 -0
  581. /package/{cjs → dist/cjs}/run.js +0 -0
  582. /package/{cjs → dist/cjs}/server.js +0 -0
  583. /package/{cjs → dist/cjs}/storage-multi.js +0 -0
  584. /package/{cjs → dist/cjs}/tao.js +0 -0
  585. /package/{cjs → dist/cjs}/tar.js +0 -0
  586. /package/{cjs → dist/cjs}/test.js +0 -0
  587. /package/{cjs → dist/cjs}/tgql-d1.js +0 -0
  588. /package/{cjs → dist/cjs}/tgql.js +0 -0
  589. /package/{cjs → dist/cjs}/toerl.js +0 -0
  590. /package/{cjs → dist/cjs}/utils.js +0 -0
  591. /package/{cjs → dist/cjs}/wao.js +0 -0
  592. /package/{cjs → dist/cjs}/waosm/waosm.js +0 -0
  593. /package/{cjs → dist/cjs}/waosm-node/waosm.js +0 -0
  594. /package/{cjs → dist/cjs}/waosm-node/waosm_bg.js +0 -0
  595. /package/{cjs → dist/cjs}/waosm-node/waosm_bg.wasm +0 -0
  596. /package/{cjs → dist/cjs}/waosm-node/waosm_bg.wasm.js +0 -0
  597. /package/{cjs → dist/cjs}/waosm-node.js +0 -0
  598. /package/{cjs → dist/cjs}/war.js +0 -0
  599. /package/{cjs → dist/cjs}/weavedrive.js +0 -0
  600. /package/{cjs → dist/cjs}/web.js +0 -0
  601. /package/{cjs → dist/cjs}/workspace/.mcp.json +0 -0
  602. /package/{cjs → dist/cjs}/workspace/CLAUDE.md +0 -0
  603. /package/{cjs → dist/cjs}/workspace/README.md +0 -0
  604. /package/{cjs → dist/cjs}/workspace/dashboard/index.html +0 -0
  605. /package/{cjs → dist/cjs}/workspace/dashboard/package.json +0 -0
  606. /package/{esm → dist/cjs}/workspace/dashboard/public/favicon.ico +0 -0
  607. /package/{cjs → dist/cjs}/workspace/dashboard/public/favicon.png +0 -0
  608. /package/{cjs → dist/cjs}/workspace/dashboard/server.js +0 -0
  609. /package/{cjs → dist/cjs}/workspace/dashboard/src/App.jsx +0 -0
  610. /package/{cjs → dist/cjs}/workspace/dashboard/src/main.jsx +0 -0
  611. /package/{cjs → dist/cjs}/workspace/dashboard/vite.config.js +0 -0
  612. /package/{cjs → dist/cjs}/workspace/package.json +0 -0
  613. /package/{esm → dist/cjs}/workspace/src/counter.lua +0 -0
  614. /package/{esm → dist/esm}/accounts-web.js +0 -0
  615. /package/{esm → dist/esm}/accounts.js +0 -0
  616. /package/{esm → dist/esm}/adaptor-base.js +0 -0
  617. /package/{esm → dist/esm}/adaptor-cf.js +0 -0
  618. /package/{esm → dist/esm}/adaptor-web.js +0 -0
  619. /package/{esm → dist/esm}/adaptor.js +0 -0
  620. /package/{esm → dist/esm}/ao-loader.js +0 -0
  621. /package/{esm → dist/esm}/ao.js +0 -0
  622. /package/{esm → dist/esm}/aoconnect-base.js +0 -0
  623. /package/{esm → dist/esm}/aoconnect-cf.js +0 -0
  624. /package/{esm → dist/esm}/aoconnect-web.js +0 -0
  625. /package/{esm → dist/esm}/aoconnect.js +0 -0
  626. /package/{esm → dist/esm}/aos_wamr.js +0 -0
  627. /package/{esm → dist/esm}/ar-remote.js +0 -0
  628. /package/{esm → dist/esm}/ar.js +0 -0
  629. /package/{esm → dist/esm}/armem-base.js +0 -0
  630. /package/{esm → dist/esm}/armem-cf.js +0 -0
  631. /package/{esm → dist/esm}/armem-web.js +0 -0
  632. /package/{esm → dist/esm}/armem.js +0 -0
  633. /package/{esm → dist/esm}/bao.js +0 -0
  634. /package/{esm → dist/esm}/bar.js +0 -0
  635. /package/{esm → dist/esm}/build.js +0 -0
  636. /package/{esm → dist/esm}/bundler.js +0 -0
  637. /package/{esm → dist/esm}/car.js +0 -0
  638. /package/{esm → dist/esm}/cf-env.js +0 -0
  639. /package/{esm → dist/esm}/cf.js +0 -0
  640. /package/{esm → dist/esm}/cli.js +0 -0
  641. /package/{esm → dist/esm}/compress.js +0 -0
  642. /package/{esm → dist/esm}/create.js +0 -0
  643. /package/{esm → dist/esm}/devs.js +0 -0
  644. /package/{esm → dist/esm}/dirname.js +0 -0
  645. /package/{esm → dist/esm}/dodb.js +0 -0
  646. /package/{esm → dist/esm}/erl_json.js +0 -0
  647. /package/{esm → dist/esm}/erl_str.js +0 -0
  648. /package/{esm → dist/esm}/gql.js +0 -0
  649. /package/{esm → dist/esm}/hb.js +0 -0
  650. /package/{esm → dist/esm}/helpers.js +0 -0
  651. /package/{esm → dist/esm}/http.js +0 -0
  652. /package/{esm → dist/esm}/hub/bundler.js +0 -0
  653. /package/{esm → dist/esm}/hub/cu.js +0 -0
  654. /package/{esm → dist/esm}/hub/fs.js +0 -0
  655. /package/{esm → dist/esm}/hub/index.js +0 -0
  656. /package/{esm → dist/esm}/hub/utils.js +0 -0
  657. /package/{esm → dist/esm}/hub/ws-proxy.js +0 -0
  658. /package/{esm → dist/esm}/hyper-aos.js +0 -0
  659. /package/{esm → dist/esm}/hyperbeam-server.js +0 -0
  660. /package/{esm → dist/esm}/hyperbeam.js +0 -0
  661. /package/{esm → dist/esm}/index.js +0 -0
  662. /package/{esm → dist/esm}/keygen.js +0 -0
  663. /package/{esm → dist/esm}/lfdb.js +0 -0
  664. /package/{esm → dist/esm}/lua/aos.wasm +0 -0
  665. /package/{esm → dist/esm}/lua/aos2_0_1.js +0 -0
  666. /package/{esm → dist/esm}/lua/aos2_0_1.wasm +0 -0
  667. /package/{esm → dist/esm}/lua/aos2_0_3.js +0 -0
  668. /package/{esm → dist/esm}/lua/aos2_0_3.wasm +0 -0
  669. /package/{esm → dist/esm}/lua/aos2_0_4_32.js +0 -0
  670. /package/{esm → dist/esm}/lua/aos2_0_4_32.wasm +0 -0
  671. /package/{esm → dist/esm}/lua/aos2_0_6.wasm +0 -0
  672. /package/{esm → dist/esm}/lua/apm.lua +0 -0
  673. /package/{esm → dist/esm}/lua/llama.wasm +0 -0
  674. /package/{esm → dist/esm}/lua/process.wasm +0 -0
  675. /package/{esm → dist/esm}/lua/sqlite.js +0 -0
  676. /package/{esm → dist/esm}/lua/sqlite.wasm +0 -0
  677. /package/{esm → dist/esm}/lua/weavedb_mock.lua +0 -0
  678. /package/{esm → dist/esm}/lua/weavedrive.lua +0 -0
  679. /package/{esm → dist/esm}/package.json +0 -0
  680. /package/{esm → dist/esm}/run.js +0 -0
  681. /package/{esm → dist/esm}/server.js +0 -0
  682. /package/{esm → dist/esm}/storage-multi.js +0 -0
  683. /package/{esm → dist/esm}/tao.js +0 -0
  684. /package/{esm → dist/esm}/tar.js +0 -0
  685. /package/{esm → dist/esm}/test.js +0 -0
  686. /package/{esm → dist/esm}/tgql-d1.js +0 -0
  687. /package/{esm → dist/esm}/tgql.js +0 -0
  688. /package/{esm → dist/esm}/toerl.js +0 -0
  689. /package/{esm → dist/esm}/utils.js +0 -0
  690. /package/{esm → dist/esm}/wao.js +0 -0
  691. /package/{esm → dist/esm}/waosm/README.md +0 -0
  692. /package/{esm → dist/esm}/waosm/waosm.d.ts +0 -0
  693. /package/{esm → dist/esm}/waosm/waosm.js +0 -0
  694. /package/{esm → dist/esm}/waosm/waosm_bg.wasm +0 -0
  695. /package/{esm → dist/esm}/waosm/waosm_bg.wasm.d.ts +0 -0
  696. /package/{esm → dist/esm}/waosm-node/README.md +0 -0
  697. /package/{esm → dist/esm}/waosm-node/waosm.d.ts +0 -0
  698. /package/{esm → dist/esm}/waosm-node/waosm.js +0 -0
  699. /package/{esm → dist/esm}/waosm-node/waosm_bg.js +0 -0
  700. /package/{esm → dist/esm}/waosm-node/waosm_bg.wasm +0 -0
  701. /package/{esm → dist/esm}/waosm-node/waosm_bg.wasm.d.ts +0 -0
  702. /package/{esm → dist/esm}/waosm-node/waosm_bg.wasm.js +0 -0
  703. /package/{esm → dist/esm}/waosm-node.js +0 -0
  704. /package/{esm → dist/esm}/war.js +0 -0
  705. /package/{esm → dist/esm}/weavedrive.js +0 -0
  706. /package/{esm → dist/esm}/web.js +0 -0
  707. /package/{esm → dist/esm}/workspace/.mcp.json +0 -0
  708. /package/{esm → dist/esm}/workspace/CLAUDE.md +0 -0
  709. /package/{esm → dist/esm}/workspace/README.md +0 -0
  710. /package/{esm → dist/esm}/workspace/dashboard/index.html +0 -0
  711. /package/{esm → dist/esm}/workspace/dashboard/package.json +0 -0
  712. /package/{esm/workspace/dashboard/public/favicon.png → dist/esm/workspace/dashboard/public/favicon.ico} +0 -0
  713. /package/{esm → dist/esm}/workspace/dashboard/server.js +0 -0
  714. /package/{esm → dist/esm}/workspace/dashboard/src/App.jsx +0 -0
  715. /package/{cjs/workspace/frontend → dist/esm/workspace/dashboard}/src/main.jsx +0 -0
  716. /package/{esm → dist/esm}/workspace/dashboard/vite.config.js +0 -0
  717. /package/{esm → dist/esm}/workspace/package.json +0 -0
  718. /package/{postinstall.cjs → dist/postinstall.cjs} +0 -0
  719. /package/{esm → src}/workspace/dashboard/src/main.jsx +0 -0
@@ -0,0 +1,67 @@
1
+ import { useEffect, useRef } from 'react'
2
+ import { scrollTo } from '../utils/scrollTo'
3
+ import s from './Hero.module.css'
4
+
5
+ const STATS = [
6
+ { value: '5', label: 'Test Envs' },
7
+ { value: '1000x', label: 'Faster' },
8
+ { value: 'Free', label: 'To Start' },
9
+ ]
10
+
11
+ export default function Hero() {
12
+ const sectionRef = useRef(null)
13
+
14
+ useEffect(() => {
15
+ const el = sectionRef.current
16
+ if (!el) return
17
+ requestAnimationFrame(() => el.classList.add(s.entered))
18
+ }, [])
19
+
20
+ return (
21
+ <section className={s.hero} id="hero" ref={sectionRef}>
22
+ <div className={s.meshBg} />
23
+
24
+ <div className={s.content}>
25
+ <span className={s.badge}>AO &amp; HyperBEAM Toolchain</span>
26
+ <h1 className={s.title}>
27
+ Agent Driven Development<br />
28
+ for the <span className={s.gradient}>Verifiable Internet.</span>
29
+ </h1>
30
+
31
+ <p className={s.subtitle}>
32
+ Write less code with the SDK. Write no code with AI agents.
33
+ Test at lightning speed. Learn from the most comprehensive
34
+ AO knowledge base — built for devs and agents alike.
35
+ </p>
36
+
37
+ <div className={s.ctas}>
38
+ <a
39
+ href="#get-started"
40
+ className="btn-primary"
41
+ onClick={e => { e.preventDefault(); scrollTo('get-started') }}
42
+ >
43
+ Start Your Journey
44
+ </a>
45
+ <a
46
+ href="https://github.com/arweaveoasis/wao"
47
+ className="btn-ghost"
48
+ target="_blank"
49
+ rel="noopener noreferrer"
50
+ >
51
+ View on GitHub
52
+ </a>
53
+ </div>
54
+
55
+ <div className={s.stats}>
56
+ {STATS.map(st => (
57
+ <div className={s.stat} key={st.label}>
58
+ <span className={s.statValue}>{st.value}</span>
59
+ <span className={s.statLabel}>{st.label}</span>
60
+ </div>
61
+ ))}
62
+ </div>
63
+ </div>
64
+
65
+ </section>
66
+ )
67
+ }
@@ -0,0 +1,202 @@
1
+ .hero {
2
+ position: relative;
3
+ min-height: 100vh;
4
+ display: flex;
5
+ flex-direction: column;
6
+ align-items: center;
7
+ justify-content: center;
8
+ text-align: center;
9
+ padding: 140px 24px 80px;
10
+ overflow: hidden;
11
+ }
12
+
13
+ /* Background image with mask */
14
+ .meshBg {
15
+ position: absolute;
16
+ inset: 0;
17
+ background: url('/images/hero-bg.png') center/cover no-repeat;
18
+ pointer-events: none;
19
+ mask-image:
20
+ radial-gradient(ellipse 60% 50% at 75% 60%, black 0%, transparent 70%),
21
+ radial-gradient(ellipse 35% 45% at 15% 45%, rgba(0,0,0,0.5) 0%, transparent 60%);
22
+ -webkit-mask-image:
23
+ radial-gradient(ellipse 60% 50% at 75% 60%, black 0%, transparent 70%),
24
+ radial-gradient(ellipse 35% 45% at 15% 45%, rgba(0,0,0,0.5) 0%, transparent 60%);
25
+ mask-composite: add;
26
+ -webkit-mask-composite: source-over;
27
+ opacity: 0.7;
28
+ animation: heroBgPulse 8s ease-in-out infinite alternate;
29
+ }
30
+
31
+ @keyframes heroBgPulse {
32
+ 0% { opacity: 0.6; }
33
+ 100% { opacity: 0.8; }
34
+ }
35
+
36
+ /* Colored glow accents */
37
+ .hero::before {
38
+ content: '';
39
+ position: absolute;
40
+ inset: 0;
41
+ background:
42
+ radial-gradient(circle 400px at 70% 65%, rgba(59, 130, 246, 0.12) 0%, transparent 70%),
43
+ radial-gradient(circle 300px at 25% 75%, rgba(168, 85, 247, 0.08) 0%, transparent 60%),
44
+ linear-gradient(180deg, transparent 70%, var(--bg-primary) 100%);
45
+ pointer-events: none;
46
+ }
47
+
48
+ .content {
49
+ position: relative;
50
+ z-index: 1;
51
+ max-width: 1000px;
52
+ }
53
+
54
+ /* Staggered entrance */
55
+ .badge,
56
+ .title,
57
+ .subtitle,
58
+ .ctas,
59
+ .stats {
60
+ opacity: 0;
61
+ transform: translateY(24px);
62
+ transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1),
63
+ transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
64
+ }
65
+
66
+ .entered .badge { opacity: 1; transform: translateY(0); transition-delay: 0ms; }
67
+ .entered .title { opacity: 1; transform: translateY(0); transition-delay: 120ms; }
68
+ .entered .subtitle { opacity: 1; transform: translateY(0); transition-delay: 240ms; }
69
+ .entered .ctas { opacity: 1; transform: translateY(0); transition-delay: 360ms; }
70
+ .entered .stats { opacity: 1; transform: translateY(0); transition-delay: 480ms; }
71
+
72
+ .badge {
73
+ display: inline-flex;
74
+ align-items: center;
75
+ gap: 8px;
76
+ padding: 8px 18px;
77
+ border-radius: 100px;
78
+ border: 1px solid var(--border);
79
+ background: rgba(168, 85, 247, 0.06);
80
+ font-size: 0.82rem;
81
+ font-weight: 500;
82
+ color: var(--accent-light);
83
+ margin-bottom: 32px;
84
+ }
85
+
86
+ .badge::before {
87
+ content: '';
88
+ width: 6px;
89
+ height: 6px;
90
+ border-radius: 50%;
91
+ background: var(--accent);
92
+ box-shadow: 0 0 8px var(--accent);
93
+ }
94
+
95
+ .title {
96
+ font-size: clamp(2.5rem, 6vw, 4.2rem);
97
+ font-weight: 700;
98
+ line-height: 1.2;
99
+ margin-bottom: 28px;
100
+ letter-spacing: -0.03em;
101
+ }
102
+
103
+ .gradient {
104
+ background: linear-gradient(135deg, #a855f7, #3b82f6, #22c55e);
105
+ background-size: 200% 200%;
106
+ -webkit-background-clip: text;
107
+ -webkit-text-fill-color: transparent;
108
+ background-clip: text;
109
+ animation: gradientShift 6s ease-in-out infinite;
110
+ }
111
+
112
+ @keyframes gradientShift {
113
+ 0%, 100% { background-position: 0% 50%; }
114
+ 50% { background-position: 100% 50%; }
115
+ }
116
+
117
+ .subtitle {
118
+ font-size: 1.2rem;
119
+ color: var(--text-2);
120
+ line-height: 1.7;
121
+ max-width: 600px;
122
+ margin: 0 auto 40px;
123
+ }
124
+
125
+ .ctas {
126
+ display: flex;
127
+ gap: 16px;
128
+ justify-content: center;
129
+ flex-wrap: wrap;
130
+ }
131
+
132
+ /* Stat pills — horizontal row */
133
+ .stats {
134
+ display: flex;
135
+ gap: 16px;
136
+ margin-top: 48px;
137
+ justify-content: center;
138
+ flex-wrap: wrap;
139
+ }
140
+
141
+ .stat {
142
+ display: flex;
143
+ flex-direction: column;
144
+ align-items: center;
145
+ gap: 4px;
146
+ padding: 16px 28px;
147
+ border-radius: 14px;
148
+ background: rgba(255, 255, 255, 0.04);
149
+ backdrop-filter: blur(20px);
150
+ -webkit-backdrop-filter: blur(20px);
151
+ border: 1px solid rgba(255, 255, 255, 0.06);
152
+ }
153
+
154
+ .statValue {
155
+ font-family: var(--font-display);
156
+ font-weight: 700;
157
+ font-size: 1.1rem;
158
+ color: var(--accent-light);
159
+ }
160
+
161
+ .statLabel {
162
+ font-size: 0.72rem;
163
+ color: rgba(255, 255, 255, 0.7);
164
+ text-transform: uppercase;
165
+ letter-spacing: 0.06em;
166
+ }
167
+
168
+ @media (max-width: 768px) {
169
+ .stats {
170
+ gap: 10px;
171
+ }
172
+
173
+ .stat {
174
+ padding: 12px 20px;
175
+ }
176
+
177
+ .statValue {
178
+ font-size: 0.95rem;
179
+ }
180
+ }
181
+
182
+ @media (max-width: 480px) {
183
+ .hero {
184
+ padding: 120px 20px 60px;
185
+ }
186
+
187
+ .subtitle {
188
+ font-size: 1.05rem;
189
+ }
190
+
191
+ .stats {
192
+ flex-direction: column;
193
+ max-width: 280px;
194
+ margin-left: auto;
195
+ margin-right: auto;
196
+ }
197
+
198
+ .stat {
199
+ flex-direction: row;
200
+ gap: 10px;
201
+ }
202
+ }
@@ -0,0 +1,46 @@
1
+ import SectionWrapper from '../components/SectionWrapper'
2
+ import s from './HyperADD.module.css'
3
+
4
+ const FEATURES = [
5
+ 'Scaffold projects instantly',
6
+ '10 specialized HyperWizard roles',
7
+ 'Quality gates & enforcing hooks',
8
+ '20+ slash commands',
9
+ 'Persistent task tracking',
10
+ 'Structured agent handoffs',
11
+ ]
12
+
13
+ export default function HyperADD() {
14
+ return (
15
+ <SectionWrapper id="hyperadd" className={s.section}>
16
+ {/* Full-bleed background image */}
17
+ <div className={s.bgImage} />
18
+ <div className={s.bgOverlay} />
19
+
20
+ <div className={s.heroContent}>
21
+ <div className={s.textCol}>
22
+ <span className={`eyebrow ${s.eyebrow}`}>Step 04 &middot; Build with AI</span>
23
+ <h2 className={`section-title ${s.title}`}>Write no code.</h2>
24
+ <p className={s.subtitle}>
25
+ AI agents that scaffold, build, test, and ship your AO applications.
26
+ Persistent context, quality gates, and structured handoffs — you direct, they deliver.
27
+ </p>
28
+
29
+ <div className={s.pills}>
30
+ {FEATURES.map(f => (
31
+ <span className={s.pill} key={f}>{f}</span>
32
+ ))}
33
+ </div>
34
+
35
+ <a href="https://docs.wao.arweaveoasis.com/add/overview" className={`btn-primary ${s.ctaBtn}`} target="_blank" rel="noopener noreferrer">
36
+ Build with HyperADD
37
+ </a>
38
+ </div>
39
+
40
+ <div className={s.screenshotCol}>
41
+ <img src="/images/dashboard.png" alt="HyperADD Dashboard" className={s.screenshot} />
42
+ </div>
43
+ </div>
44
+ </SectionWrapper>
45
+ )
46
+ }
@@ -0,0 +1,113 @@
1
+ .section {
2
+ --section-accent: #3b82f6;
3
+ position: relative;
4
+ padding: 0;
5
+ overflow: hidden;
6
+ }
7
+
8
+ /* Full-bleed background */
9
+ .bgImage {
10
+ position: absolute;
11
+ inset: 0;
12
+ background: url('/images/hyperadd.png') center/cover no-repeat;
13
+ z-index: 0;
14
+ }
15
+
16
+ .bgOverlay {
17
+ position: absolute;
18
+ inset: 0;
19
+ background:
20
+ linear-gradient(180deg, var(--bg-primary) 0%, rgba(10, 5, 21, 0.7) 30%, rgba(10, 5, 21, 0.75) 70%, var(--bg-primary) 100%);
21
+ z-index: 1;
22
+ }
23
+
24
+ .heroContent {
25
+ position: relative;
26
+ z-index: 2;
27
+ max-width: var(--max-width);
28
+ margin: 0 auto;
29
+ display: grid;
30
+ grid-template-columns: 1fr 1.2fr;
31
+ gap: 48px;
32
+ align-items: center;
33
+ padding: 120px 24px;
34
+ }
35
+
36
+ .textCol {
37
+ display: flex;
38
+ flex-direction: column;
39
+ }
40
+
41
+ .eyebrow {
42
+ color: #3b82f6;
43
+ }
44
+
45
+ .title {
46
+ text-shadow: 0 2px 20px rgba(0, 0, 0, 0.5);
47
+ }
48
+
49
+ .subtitle {
50
+ font-size: 1.1rem;
51
+ color: var(--text-2);
52
+ line-height: 1.7;
53
+ max-width: 500px;
54
+ margin-bottom: 32px;
55
+ }
56
+
57
+ /* Feature pills */
58
+ .pills {
59
+ display: flex;
60
+ flex-wrap: wrap;
61
+ gap: 10px;
62
+ }
63
+
64
+ .pill {
65
+ padding: 8px 16px;
66
+ font-size: 0.82rem;
67
+ font-weight: 500;
68
+ border-radius: 100px;
69
+ background: rgba(59, 130, 246, 0.1);
70
+ border: 1px solid rgba(59, 130, 246, 0.2);
71
+ color: #93c5fd;
72
+ white-space: nowrap;
73
+ transition: background 0.2s;
74
+ }
75
+
76
+ .pill:hover {
77
+ background: rgba(59, 130, 246, 0.18);
78
+ }
79
+
80
+ .ctaBtn {
81
+ margin-top: 28px;
82
+ width: fit-content;
83
+ }
84
+
85
+ /* Screenshot */
86
+ .screenshot {
87
+ width: 100%;
88
+ border-radius: 12px;
89
+ box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
90
+ }
91
+
92
+ @media (max-width: 900px) {
93
+ .heroContent {
94
+ grid-template-columns: 1fr;
95
+ gap: 40px;
96
+ padding: 100px 24px;
97
+ }
98
+ }
99
+
100
+ @media (max-width: 480px) {
101
+ .heroContent {
102
+ padding: 80px 20px;
103
+ }
104
+
105
+ .pills {
106
+ gap: 8px;
107
+ }
108
+
109
+ .pill {
110
+ font-size: 0.78rem;
111
+ padding: 6px 12px;
112
+ }
113
+ }
@@ -0,0 +1,90 @@
1
+ import SectionWrapper from '../components/SectionWrapper'
2
+ import CodeBlock from '../components/CodeBlock'
3
+ import s from './SDK.module.css'
4
+
5
+ const WAO_CODE = `<span class="kw">import</span> { <span class="fn">AO</span>, <span class="fn">acc</span> } <span class="kw">from</span> <span class="str">"wao/test"</span>
6
+
7
+ <span class="kw">const</span> ao = <span class="kw">await new</span> <span class="fn">AO</span>().<span class="fn">init</span>(<span class="fn">acc</span>[0])
8
+ <span class="kw">const</span> { p } = <span class="kw">await</span> ao.<span class="fn">deploy</span>({ src_data })
9
+ assert.<span class="fn">equal</span>(<span class="kw">await</span> p.<span class="fn">d</span>(<span class="str">"Hello"</span>, false), <span class="str">"Hello, World!"</span>)`
10
+
11
+ const TRAD_CODE = `<span class="kw">import</span> { <span class="fn">connect</span>, <span class="fn">acc</span> } <span class="kw">from</span> <span class="str">"wao/test"</span>
12
+
13
+ <span class="kw">const</span> { spawn, message, dryrun } = <span class="fn">connect</span>()
14
+ <span class="kw">const</span> signer = <span class="fn">acc</span>[0].signer
15
+
16
+ <span class="kw">const</span> pid = <span class="kw">await</span> <span class="fn">spawn</span>({
17
+ signer,
18
+ module: <span class="str">"Do_Uc2Sju_ffp6Ev0AnLVdPtot15rvMjP..."</span>,
19
+ scheduler: <span class="str">"_GQ33BkPtZrqxA84vM8Zk-N2aO0toNNu..."</span>
20
+ })
21
+
22
+ <span class="kw">await</span> <span class="fn">message</span>({
23
+ process: pid,
24
+ tags: [{ name: <span class="str">"Action"</span>, value: <span class="str">"Eval"</span> }],
25
+ data: src_data, signer,
26
+ })
27
+
28
+ <span class="kw">const</span> res = <span class="kw">await</span> <span class="fn">dryrun</span>({
29
+ process: pid,
30
+ tags: [{ name: <span class="str">"Action"</span>, value: <span class="str">"Hello"</span> }],
31
+ signer,
32
+ })
33
+ assert.<span class="fn">equal</span>(res.Messages[0].Data, <span class="str">"Hello, World!"</span>)`
34
+
35
+ const FEATURES = [
36
+ 'Concise, intuitive API — 3 lines instead of 30+',
37
+ 'Built-in check/get validation pattern',
38
+ 'Function piping with pipe() for composable flows',
39
+ 'Unified modules: AO, AR, HB, GQL, and HBSig',
40
+ ]
41
+
42
+ export default function SDK() {
43
+ return (
44
+ <SectionWrapper id="sdk" className={s.section}>
45
+ <div className={s.separator} />
46
+ <div className={s.inner}>
47
+ <div className={s.text}>
48
+ <span className="eyebrow">Step 02 &middot; Code</span>
49
+ <h2 className="section-title">Write less code.</h2>
50
+ <p className="section-subtitle">
51
+ 3 lines instead of 30+. A radically simplified developer experience
52
+ for Arweave and AO — everything you need, nothing you don't.
53
+ </p>
54
+ <div className={s.features}>
55
+ {FEATURES.map(f => (
56
+ <div className={s.feature} key={f}>
57
+ <span className={s.featureDot} />
58
+ <span>{f}</span>
59
+ </div>
60
+ ))}
61
+ </div>
62
+
63
+ <a href="https://docs.wao.arweaveoasis.com/api/overview" className="btn-primary" style={{ marginTop: '24px', width: 'fit-content' }} target="_blank" rel="noopener noreferrer">
64
+ Explore the SDK
65
+ </a>
66
+ </div>
67
+
68
+ <div className={s.codeCol}>
69
+ <div className={s.linesPill}>3 lines vs 15+</div>
70
+ <div className={s.codeWrap}>
71
+ <CodeBlock
72
+ tabs={[
73
+ {
74
+ label: 'WAO SDK',
75
+ code: WAO_CODE,
76
+ raw: `import { AO, acc } from "wao/test"\n\nconst ao = await new AO().init(acc[0])\nconst { p } = await ao.deploy({ src_data })\nassert.equal(await p.d("Hello", false), "Hello, World!")`,
77
+ },
78
+ {
79
+ label: 'Traditional',
80
+ code: TRAD_CODE,
81
+ raw: `import { connect, acc } from "wao/test"\n\nconst { spawn, message, dryrun } = connect()\nconst signer = acc[0].signer\n\nconst pid = await spawn({ signer, module: "...", scheduler: "..." })\nawait message({ process: pid, tags: [...], data: src_data, signer })\nconst res = await dryrun({ process: pid, tags: [...], signer })\nassert.equal(res.Messages[0].Data, "Hello, World!")`,
82
+ },
83
+ ]}
84
+ />
85
+ </div>
86
+ </div>
87
+ </div>
88
+ </SectionWrapper>
89
+ )
90
+ }
@@ -0,0 +1,122 @@
1
+ .section {
2
+ padding: var(--section-padding);
3
+ position: relative;
4
+ }
5
+
6
+ .btnRow {
7
+ display: flex;
8
+ gap: 12px;
9
+ margin-top: 28px;
10
+ flex-wrap: wrap;
11
+ }
12
+
13
+ /* Full-width gradient separator */
14
+ .separator {
15
+ position: absolute;
16
+ top: 0;
17
+ left: 0;
18
+ right: 0;
19
+ height: 1px;
20
+ background: linear-gradient(90deg, transparent, var(--accent), transparent);
21
+ }
22
+
23
+ .inner {
24
+ max-width: var(--max-width);
25
+ margin: 0 auto;
26
+ display: grid;
27
+ grid-template-columns: 1fr 1.2fr;
28
+ gap: 64px;
29
+ align-items: center;
30
+ }
31
+
32
+ .text {
33
+ display: flex;
34
+ flex-direction: column;
35
+ }
36
+
37
+ .features {
38
+ display: flex;
39
+ flex-direction: column;
40
+ gap: 16px;
41
+ margin-top: 32px;
42
+ }
43
+
44
+ .feature {
45
+ display: flex;
46
+ align-items: flex-start;
47
+ gap: 12px;
48
+ font-size: 0.95rem;
49
+ color: var(--text-2);
50
+ line-height: 1.5;
51
+ }
52
+
53
+ .featureDot {
54
+ flex-shrink: 0;
55
+ width: 8px;
56
+ height: 8px;
57
+ border-radius: 50%;
58
+ background: var(--accent);
59
+ margin-top: 7px;
60
+ }
61
+
62
+ /* Code column with perspective tilt */
63
+ .codeCol {
64
+ position: relative;
65
+ }
66
+
67
+ .linesPill {
68
+ display: inline-flex;
69
+ padding: 6px 14px;
70
+ font-size: 0.75rem;
71
+ font-weight: 600;
72
+ border-radius: 100px;
73
+ background: rgba(168, 85, 247, 0.1);
74
+ border: 1px solid rgba(168, 85, 247, 0.2);
75
+ color: var(--accent-light);
76
+ margin-bottom: 16px;
77
+ }
78
+
79
+ .codeWrap {
80
+ perspective: 1000px;
81
+ }
82
+
83
+ .codeWrap > * {
84
+ transform: rotateY(-2deg);
85
+ transition: transform 0.4s ease;
86
+ position: relative;
87
+ }
88
+
89
+ .codeWrap > *:hover {
90
+ transform: rotateY(0deg);
91
+ }
92
+
93
+ /* Animated gradient border */
94
+ .codeWrap > *::before {
95
+ content: '';
96
+ position: absolute;
97
+ inset: -1px;
98
+ border-radius: 17px;
99
+ background: conic-gradient(from var(--angle, 0deg), var(--accent), #3b82f6, #22d3ee, var(--accent));
100
+ z-index: -1;
101
+ opacity: 0.4;
102
+ animation: spinBorder 4s linear infinite;
103
+ }
104
+
105
+ @keyframes spinBorder {
106
+ to { --angle: 360deg; }
107
+ }
108
+
109
+ @media (max-width: 768px) {
110
+ .inner {
111
+ grid-template-columns: 1fr;
112
+ gap: 40px;
113
+ }
114
+
115
+ .codeWrap > * {
116
+ transform: none;
117
+ }
118
+
119
+ .codeWrap > *:hover {
120
+ transform: none;
121
+ }
122
+ }
@@ -0,0 +1,47 @@
1
+ import SectionWrapper from '../components/SectionWrapper'
2
+ import s from './Testing.module.css'
3
+
4
+ const ENVS = [
5
+ { num: '01', title: 'In-Memory AOS', speed: 'Lightning Fast', color: '#34d399' },
6
+ { num: '02', title: 'Local AO Units', speed: 'Your Machine', color: '#60a5fa' },
7
+ { num: '03', title: 'Local HyperBEAM', speed: 'Sandboxed', color: '#a78bfa' },
8
+ { num: '04', title: 'WAO DEVNET', speed: 'Free & Scalable', color: '#f43f5e' },
9
+ { num: '05', title: 'Remote HyperBEAM', speed: 'Production', color: '#f59e0b' },
10
+ ]
11
+
12
+ export default function Testing() {
13
+ return (
14
+ <SectionWrapper id="testing" className={s.section}>
15
+ <div className={s.inner}>
16
+ <div className={s.header}>
17
+ <span className="eyebrow">Step 03 &middot; Test</span>
18
+ <h2 className="section-title">Lightning fast testing.</h2>
19
+ <p className="section-subtitle" style={{ margin: '0 auto' }}>
20
+ Five environments from sub-second in-memory to full remote —
21
+ one API, zero code changes. Test at the speed you think, or let wizard agents handle.
22
+ </p>
23
+ </div>
24
+
25
+ <div className={s.spectrum}>
26
+ <span className={s.specLabel}>Fast</span>
27
+ <span className={s.specLabel}>Realistic</span>
28
+ </div>
29
+ <div className={s.specBar} />
30
+
31
+ <div className={s.cards}>
32
+ {ENVS.map((env) => (
33
+ <div
34
+ className={s.card}
35
+ key={env.num}
36
+ style={{ '--card-color': env.color }}
37
+ >
38
+ <span className={s.cardNum}>{env.num}</span>
39
+ <span className={s.cardTitle}>{env.title}</span>
40
+ <span className={s.cardSpeed}>{env.speed}</span>
41
+ </div>
42
+ ))}
43
+ </div>
44
+ </div>
45
+ </SectionWrapper>
46
+ )
47
+ }