{"_id":"@aihu/arbor","_rev":"15-569ef83ce6b7d68ff2a007cf273a0009","name":"@aihu/arbor","dist-tags":{"canary":"0.0.0-canary-331b0151f7756608a00168b6de1d3b7bae639113","latest":"4.1.3"},"versions":{"0.1.0":{"name":"@aihu/arbor","version":"0.1.0","license":"MIT","_id":"@aihu/arbor@0.1.0","maintainers":[{"name":"srmcguirt","email":"srmcguirt@gmail.com"}],"homepage":"https://github.com/fellwork/aihu/tree/main/packages/arbor#readme","bugs":{"url":"https://github.com/fellwork/aihu/issues"},"dist":{"shasum":"a552d7bb0a85c0787d8ba0a90c8e136076367cf6","tarball":"https://registry.npmjs.org/@aihu/arbor/-/arbor-0.1.0.tgz","fileCount":7,"integrity":"sha512-35FFni5xqQjGCeMVA7JO0HJXoz1tDhQt0Z+baJBKZbXRWlBuWb/r/SB89V0FHKQ8HogDLwSHqbUxYWeBbCNQNg==","signatures":[{"sig":"MEQCIELWAgbFDVuNVEfM4tISJNE9LGVtKOjd9FQog8GGcd7wAiBd9v8xcRbwRIubwhtsfQDwTmk2DaqlWKyHvTdknE+ndQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73970},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"02c309492183f2abf030a21a847ac41b1e9ffb00","scripts":{"build":"rolldown -c && node scripts/mangle-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"srmcguirt","email":"srmcguirt@gmail.com"},"repository":{"url":"git+https://github.com/fellwork/aihu.git","type":"git","directory":"packages/arbor"},"_npmVersion":"10.9.0","description":"Reactive component tree (the rendering layer that consumes @aihu/signals).","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","dependencies":{"@aihu/signals":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/arbor_0.1.0_1778009796542_0.425523871087228","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@aihu/arbor","version":"0.1.1","license":"MIT","_id":"@aihu/arbor@0.1.1","maintainers":[{"name":"srmcguirt","email":"srmcguirt@gmail.com"}],"homepage":"https://github.com/fellwork/aihu/tree/main/packages/arbor#readme","bugs":"https://github.com/fellwork/aihu/issues","dist":{"shasum":"360b98c5a2b4f7c9f62bfa64bd864fe938cfa332","tarball":"https://registry.npmjs.org/@aihu/arbor/-/arbor-0.1.1.tgz","fileCount":7,"integrity":"sha512-oo+9S+M0bywkRooD91JXe/cPr3QdShShJzu7AXgCuyMyXP2/MIA65QySLyKtkAEHuYbINIf822IgAbnU1mFArQ==","signatures":[{"sig":"MEQCIFw+jHmqUWmZS7tzmxLng/ebMMqaQLEm/6v45MXRIvH/AiAOp5SAjdjHQVOxitdhYDNpkptEiMNkc8lUQEU6d2J7nw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76504},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"360b98c5a2b4f7c9f62bfa64bd864fe938cfa332","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"rolldown -c && node scripts/mangle-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"srmcguirt","email":"srmcguirt@gmail.com"},"_integrity":"sha512-oo+9S+M0bywkRooD91JXe/cPr3QdShShJzu7AXgCuyMyXP2/MIA65QySLyKtkAEHuYbINIf822IgAbnU1mFArQ==","repository":{"url":"git+https://github.com/fellwork/aihu.git","type":"git","directory":"packages/arbor"},"_npmVersion":"10.8.3","description":"Reactive component tree (the rendering layer that consumes @aihu/signals).","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"@aihu/signals":"0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/arbor_0.1.1_1778018655184_0.7173154452840731","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@aihu/arbor","version":"0.1.2","license":"MIT","_id":"@aihu/arbor@0.1.2","maintainers":[{"name":"srmcguirt","email":"srmcguirt@gmail.com"}],"homepage":"https://github.com/fellwork/aihu/tree/main/packages/arbor#readme","bugs":{"url":"https://github.com/fellwork/aihu/issues"},"dist":{"shasum":"472d118b900a23eeaaa96c0f39a212d9878be804","tarball":"https://registry.npmjs.org/@aihu/arbor/-/arbor-0.1.2.tgz","fileCount":7,"integrity":"sha512-for5wGYMS1lkUGBNl15DVVIVFhrPVp8062HgPUwAApVPUxsz3S6TR16EufomZ+40bWK7l9Tq7SyPmY0V10szWw==","signatures":[{"sig":"MEQCIC6LwwsANGqnCr+xumD41rvTJpAlVFl7OVhE9kUE+sVdAiB6NJMaMIDfmoc6r7Q+d/vP1T/6UVjZ1POK4b6J4Oj5Ig==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92305},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"479505ee28a97ed4cc63f5e076ce14a381db32bf","scripts":{"build":"rolldown -c && node scripts/mangle-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"srmcguirt","email":"srmcguirt@gmail.com"},"repository":{"url":"git+https://github.com/fellwork/aihu.git","type":"git","directory":"packages/arbor"},"_npmVersion":"10.9.2","description":"Reactive component tree (the rendering layer that consumes @aihu/signals).","directories":{},"sideEffects":false,"_nodeVersion":"23.9.0","dependencies":{"@aihu/signals":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/arbor_0.1.2_1778167590864_0.08687918220469193","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@aihu/arbor","version":"0.1.3","license":"MIT","_id":"@aihu/arbor@0.1.3","maintainers":[{"name":"srmcguirt","email":"srmcguirt@gmail.com"}],"homepage":"https://github.com/fellwork/aihu/tree/main/packages/arbor#readme","bugs":{"url":"https://github.com/fellwork/aihu/issues"},"dist":{"shasum":"7acb806607e5dcce891df0ed776514b306db289c","tarball":"https://registry.npmjs.org/@aihu/arbor/-/arbor-0.1.3.tgz","fileCount":7,"integrity":"sha512-a1Mtu2tAzQmuDVlM+7cvSrnztIrVvJ2TbguAtQTAApJStAo8hpxHR11zjykupJbzOFYaxPpzZrrfvejQrVAxTQ==","signatures":[{"sig":"MEUCIQDC3KP/AZoe2YTbdVYY4aVBzNtKUW1bvfAo5Rr+1DC0QgIgBL4HB0BTQ1J1J/3Ei2sTKR86GFN8TJNU1NqdFdbZff4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93495},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"70fdad254bedab492e3b46b131564605d4665537","scripts":{"build":"rolldown -c && node scripts/mangle-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"srmcguirt","email":"srmcguirt@gmail.com"},"repository":{"url":"git+https://github.com/fellwork/aihu.git","type":"git","directory":"packages/arbor"},"_npmVersion":"10.9.0","description":"Reactive component tree (the rendering layer that consumes @aihu/signals).","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","dependencies":{"@aihu/signals":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/arbor_0.1.3_1778227249781_0.159283452175085","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@aihu/arbor","version":"0.1.4","license":"MIT","_id":"@aihu/arbor@0.1.4","maintainers":[{"name":"srmcguirt","email":"srmcguirt@gmail.com"}],"homepage":"https://github.com/fellwork/aihu/tree/main/packages/arbor#readme","bugs":{"url":"https://github.com/fellwork/aihu/issues"},"dist":{"shasum":"f58200e313d9f9c563cd6e3446c12782c5024c0f","tarball":"https://registry.npmjs.org/@aihu/arbor/-/arbor-0.1.4.tgz","fileCount":7,"integrity":"sha512-CrhCmitnvCRp5od7CQvFbYHzEE45hOhCNLAPCH6YViWXrXH+kvPNpYQBWZr3H4MD4M1h0g9okOOi5lZ3Uaz2zQ==","signatures":[{"sig":"MEUCIGUmowc/LZNpiepoReNEKMxcZezLvwkhgO4z6cnw4R2TAiEA/sQApPT2EZBUZqNZuUIP+nsMFSDHufOYt3ajcVpaPgs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93489},"main":"./dist/index.js","type":"module","_from":"file:/tmp/tmp.7LWoYy2Xrz/aihu-arbor-0.1.4.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"rolldown -c && node scripts/mangle-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"srmcguirt","email":"srmcguirt@gmail.com"},"_resolved":"/tmp/tmp.7LWoYy2Xrz/aihu-arbor-0.1.4.tgz","_integrity":"sha512-CrhCmitnvCRp5od7CQvFbYHzEE45hOhCNLAPCH6YViWXrXH+kvPNpYQBWZr3H4MD4M1h0g9okOOi5lZ3Uaz2zQ==","repository":{"url":"git+https://github.com/fellwork/aihu.git","type":"git","directory":"packages/arbor"},"_npmVersion":"10.8.2","description":"Reactive component tree (the rendering layer that consumes @aihu/signals).","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","dependencies":{"@aihu/signals":"0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/arbor_0.1.4_1778345217370_0.7652237415986092","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@aihu/arbor","version":"0.1.5","license":"MIT","_id":"@aihu/arbor@0.1.5","maintainers":[{"name":"srmcguirt","email":"srmcguirt@gmail.com"}],"homepage":"https://github.com/fellwork/aihu/tree/main/packages/arbor#readme","bugs":{"url":"https://github.com/fellwork/aihu/issues"},"dist":{"shasum":"39088b9da921af6017e30c324f265cd6bd64ca95","tarball":"https://registry.npmjs.org/@aihu/arbor/-/arbor-0.1.5.tgz","fileCount":7,"integrity":"sha512-8DPrvYsj320wN3ADm1UZKG3frwneYE/1USLHlYP5DaB7YhAevZWZfPrfXWANnSNmwrJy7FPJjxkg92ZB/gdHnA==","signatures":[{"sig":"MEYCIQDUxxyYGgIRqgEvsjfbwFIH88Y2MOtVMtf2Ya1aiScPWwIhAO0gijcbMoBIVNFBnhwddxun6DpVw/sF/9FTXckoKt/e","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aihu%2farbor@0.1.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":93447},"main":"./dist/index.js","type":"module","_from":"file:/tmp/tmp.PVoX5UGTOm/aihu-arbor-0.1.5.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"rolldown -c && node scripts/mangle-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"srmcguirt","email":"srmcguirt@gmail.com"},"_resolved":"/tmp/tmp.PVoX5UGTOm/aihu-arbor-0.1.5.tgz","_integrity":"sha512-8DPrvYsj320wN3ADm1UZKG3frwneYE/1USLHlYP5DaB7YhAevZWZfPrfXWANnSNmwrJy7FPJjxkg92ZB/gdHnA==","repository":{"url":"git+https://github.com/fellwork/aihu.git","type":"git","directory":"packages/arbor"},"_npmVersion":"10.8.2","description":"Reactive component tree (the rendering layer that consumes @aihu/signals).","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@aihu/signals":"^0.1.0"},"_npmOperationalInternal":{"tmp":"tmp/arbor_0.1.5_1779933268392_0.5058536156600526","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@aihu/arbor","version":"1.0.0","license":"MIT","_id":"@aihu/arbor@1.0.0","maintainers":[{"name":"srmcguirt","email":"srmcguirt@gmail.com"}],"homepage":"https://github.com/fellwork/aihu/tree/main/packages/arbor#readme","bugs":{"url":"https://github.com/fellwork/aihu/issues"},"dist":{"shasum":"18ab3c1877f2edb3c7db67b85fe78442515bbdb0","tarball":"https://registry.npmjs.org/@aihu/arbor/-/arbor-1.0.0.tgz","fileCount":7,"integrity":"sha512-w6A6HBOo5/O6s1lzXIDcGli/2HN96CnLbOJUXDsmrcCuFF5hVLvkcv+TNUaRuFftokZ83ZjJDLARGOMJzy9+NA==","signatures":[{"sig":"MEYCIQDVulJdeoBTsWj5p/+5lxLgVyEBOrR2YMDpd78VkOSCWwIhAMk+QcfGGDR3AEKE+F6kko1GD23Seadu0EJdRsDZRJIB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aihu%2farbor@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":94393},"main":"./dist/index.js","type":"module","_from":"file:/tmp/tmp.aSz7IdLvcq/aihu-arbor-1.0.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"rolldown -c && node scripts/mangle-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"srmcguirt","email":"srmcguirt@gmail.com"},"_resolved":"/tmp/tmp.aSz7IdLvcq/aihu-arbor-1.0.0.tgz","_integrity":"sha512-w6A6HBOo5/O6s1lzXIDcGli/2HN96CnLbOJUXDsmrcCuFF5hVLvkcv+TNUaRuFftokZ83ZjJDLARGOMJzy9+NA==","repository":{"url":"git+https://github.com/fellwork/aihu.git","type":"git","directory":"packages/arbor"},"_npmVersion":"10.8.2","description":"Reactive component tree (the rendering layer that consumes @aihu/signals).","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@aihu/signals":"^0.2.0"},"_npmOperationalInternal":{"tmp":"tmp/arbor_1.0.0_1780691007361_0.6621031838554721","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@aihu/arbor","version":"2.0.0","license":"MIT","_id":"@aihu/arbor@2.0.0","maintainers":[{"name":"srmcguirt","email":"srmcguirt@gmail.com"}],"homepage":"https://github.com/fellwork/aihu/tree/main/packages/arbor#readme","bugs":{"url":"https://github.com/fellwork/aihu/issues"},"dist":{"shasum":"7ef13bc8cba1294ad67360b435ca36f666b432f4","tarball":"https://registry.npmjs.org/@aihu/arbor/-/arbor-2.0.0.tgz","fileCount":7,"integrity":"sha512-cz6/JbFUpm4JN+5x+GbE5KQSz0xEekBqrI3QSc7d24b6x/vY+ndaaYrQlQrYGuy1J8VfjeC0q05hZk+rp5Yr2Q==","signatures":[{"sig":"MEYCIQDwtD7w039NhyqxQyeFkWKycF1wMUo7bV+vI6JkIc94WgIhAONmUO/PNABKuPbA9DpTIojdJo1ci6Tvlu/Gmf6WFWGp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aihu%2farbor@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":97683},"main":"./dist/index.js","type":"module","_from":"file:/tmp/tmp.7mzVlEqgPs/aihu-arbor-2.0.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"rolldown -c && node scripts/mangle-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"srmcguirt","email":"srmcguirt@gmail.com"},"_resolved":"/tmp/tmp.7mzVlEqgPs/aihu-arbor-2.0.0.tgz","_integrity":"sha512-cz6/JbFUpm4JN+5x+GbE5KQSz0xEekBqrI3QSc7d24b6x/vY+ndaaYrQlQrYGuy1J8VfjeC0q05hZk+rp5Yr2Q==","repository":{"url":"git+https://github.com/fellwork/aihu.git","type":"git","directory":"packages/arbor"},"_npmVersion":"10.8.2","description":"Reactive component tree (the rendering layer that consumes @aihu/signals).","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@aihu/signals":"^0.3.0"},"_npmOperationalInternal":{"tmp":"tmp/arbor_2.0.0_1784389920759_0.3587289918919978","host":"s3://npm-registry-packages-npm-production"}},"0.0.0-canary-331b0151f7756608a00168b6de1d3b7bae639113":{"name":"@aihu/arbor","version":"0.0.0-canary-331b0151f7756608a00168b6de1d3b7bae639113","license":"MIT","_id":"@aihu/arbor@0.0.0-canary-331b0151f7756608a00168b6de1d3b7bae639113","maintainers":[{"name":"srmcguirt","email":"srmcguirt@gmail.com"}],"homepage":"https://github.com/fellwork/aihu/tree/main/packages/arbor#readme","bugs":{"url":"https://github.com/fellwork/aihu/issues"},"dist":{"shasum":"27a038bf008523e175661adb315d3c93f1e98815","tarball":"https://registry.npmjs.org/@aihu/arbor/-/arbor-0.0.0-canary-331b0151f7756608a00168b6de1d3b7bae639113.tgz","fileCount":7,"integrity":"sha512-u52VtdYCgwhgfNuCNqtKis2d3JWDsllSM7PCv497LQjxmDe4z4uFax3JTTncB7bZg184clV8Mbzmaqt60ZHllQ==","signatures":[{"sig":"MEUCIQDg4vCYBv/innrb1YKL5DQPqywFpfcx7dkDjFFlh7mQlQIgKtjvxC8d54/a3SL4AdBplLoJeiHnR9vWu8jN/3ry1bY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aihu%2farbor@0.0.0-canary-331b0151f7756608a00168b6de1d3b7bae639113","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":105479},"main":"./dist/index.js","type":"module","_from":"file:/tmp/tmp.fEAiCpfrfV/aihu-arbor-0.0.0-canary-331b0151f7756608a00168b6de1d3b7bae639113.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"rolldown -c && node scripts/mangle-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"srmcguirt","email":"srmcguirt@gmail.com"},"_resolved":"/tmp/tmp.fEAiCpfrfV/aihu-arbor-0.0.0-canary-331b0151f7756608a00168b6de1d3b7bae639113.tgz","_integrity":"sha512-u52VtdYCgwhgfNuCNqtKis2d3JWDsllSM7PCv497LQjxmDe4z4uFax3JTTncB7bZg184clV8Mbzmaqt60ZHllQ==","repository":{"url":"git+https://github.com/fellwork/aihu.git","type":"git","directory":"packages/arbor"},"_npmVersion":"10.8.2","description":"Reactive component tree (the rendering layer that consumes @aihu/signals).","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"@aihu/signals":"^0.0.0-canary-331b0151f7756608a00168b6de1d3b7bae639113"},"_npmOperationalInternal":{"tmp":"tmp/arbor_0.0.0-canary-331b0151f7756608a00168b6de1d3b7bae639113_1784720259265_0.38854164729943363","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"@aihu/arbor","version":"3.0.0","license":"MIT","_id":"@aihu/arbor@3.0.0","maintainers":[{"name":"srmcguirt","email":"srmcguirt@gmail.com"}],"homepage":"https://github.com/fellwork/aihu/tree/main/packages/arbor#readme","bugs":{"url":"https://github.com/fellwork/aihu/issues"},"dist":{"shasum":"956c92722cc7b85cb5eb7c7815fb0c4c972a17fe","tarball":"https://registry.npmjs.org/@aihu/arbor/-/arbor-3.0.0.tgz","fileCount":7,"integrity":"sha512-+EIxDx/PLngMCeAZK9nmMshiRRo0V5hUrbZA5zdZz45SwDQbLQHe/kLWxZHUnh+cXBQbzqVyKeB93m1UFYQNMA==","signatures":[{"sig":"MEYCIQCDe1cJQvnOPNdR1PA49bn3Umbaru4qDoRd480rVk0ExAIhAO0tefM7gzfHrPGeZf2uYXtiUDeIRgI1L+W9MLOAd7yN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aihu%2farbor@3.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":109852},"main":"./dist/index.js","type":"module","_from":"file:/tmp/tmp.Wm5SX3hury/aihu-arbor-3.0.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"rolldown -c && node scripts/mangle-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"srmcguirt","email":"srmcguirt@gmail.com"},"_resolved":"/tmp/tmp.Wm5SX3hury/aihu-arbor-3.0.0.tgz","_integrity":"sha512-+EIxDx/PLngMCeAZK9nmMshiRRo0V5hUrbZA5zdZz45SwDQbLQHe/kLWxZHUnh+cXBQbzqVyKeB93m1UFYQNMA==","repository":{"url":"git+https://github.com/fellwork/aihu.git","type":"git","directory":"packages/arbor"},"_npmVersion":"10.8.2","description":"Reactive component tree (the rendering layer that consumes @aihu/signals).","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@aihu/signals":"^0.3.0"},"_npmOperationalInternal":{"tmp":"tmp/arbor_3.0.0_1784822274891_0.6517551320955093","host":"s3://npm-registry-packages-npm-production"}},"4.0.0":{"name":"@aihu/arbor","version":"4.0.0","license":"MIT","_id":"@aihu/arbor@4.0.0","maintainers":[{"name":"srmcguirt","email":"srmcguirt@gmail.com"}],"homepage":"https://github.com/fellwork/aihu/tree/main/packages/arbor#readme","bugs":{"url":"https://github.com/fellwork/aihu/issues"},"dist":{"shasum":"ad741702b10496cd905ca0fc835d32075a1f7e83","tarball":"https://registry.npmjs.org/@aihu/arbor/-/arbor-4.0.0.tgz","fileCount":7,"integrity":"sha512-+iAuvH81+5Jz7LO2qWmmGQtkOBT4ZQVKZ0Blejs9Lliuc5deLPActgagLl/GvCEevzHV9ONX9ukNkSICakiDoA==","signatures":[{"sig":"MEUCIQDxNvQj1yWsXfA8Ctuc64muKp9If+f2i7JI+JxNFWDwBQIgEcW0PP+BCSP7dBPiARJi/WcgoaAJ+Xez1eIhxO7rIbo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aihu%2farbor@4.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":126845},"main":"./dist/index.js","type":"module","_from":"file:/tmp/tmp.VBOXYMixr4/aihu-arbor-4.0.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"rolldown -c && node scripts/mangle-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"srmcguirt","email":"srmcguirt@gmail.com"},"_resolved":"/tmp/tmp.VBOXYMixr4/aihu-arbor-4.0.0.tgz","_integrity":"sha512-+iAuvH81+5Jz7LO2qWmmGQtkOBT4ZQVKZ0Blejs9Lliuc5deLPActgagLl/GvCEevzHV9ONX9ukNkSICakiDoA==","repository":{"url":"git+https://github.com/fellwork/aihu.git","type":"git","directory":"packages/arbor"},"_npmVersion":"10.8.2","description":"Reactive component tree (the rendering layer that consumes @aihu/signals).","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@aihu/signals":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/arbor_4.0.0_1785028471833_0.058359056084024585","host":"s3://npm-registry-packages-npm-production"}},"4.1.0":{"name":"@aihu/arbor","version":"4.1.0","license":"MIT","_id":"@aihu/arbor@4.1.0","maintainers":[{"name":"srmcguirt","email":"srmcguirt@gmail.com"}],"homepage":"https://github.com/fellwork/aihu/tree/main/packages/arbor#readme","bugs":{"url":"https://github.com/fellwork/aihu/issues"},"dist":{"shasum":"10ea38afab284d5966ddbbb9589b7418ad15fd64","tarball":"https://registry.npmjs.org/@aihu/arbor/-/arbor-4.1.0.tgz","fileCount":15,"integrity":"sha512-IxGyazKGd4l3IGkjuDeOIYW1Im647hvz32fq63+qH5YYlWpqxOxbZ9UFyciSJJme3SzIXjGD/M1GE4cALQi14A==","signatures":[{"sig":"MEUCIByQVTEpnMUWEO5vkEUqmTzcbN3+daMSadNYz6PmpHiLAiEAjhdVqxplTJ55+FmgVfdceJS+ffi/nU7yjgbhR7U3R0s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aihu%2farbor@4.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":152769},"main":"./dist/index.js","type":"module","_from":"file:/tmp/tmp.7TODYrr5dv/aihu-arbor-4.1.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./hydrate":{"types":"./dist/hydrate.d.ts","import":"./dist/hydrate.js"}},"scripts":{"build":"rolldown -c && node scripts/mangle-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"srmcguirt","email":"srmcguirt@gmail.com"},"_resolved":"/tmp/tmp.7TODYrr5dv/aihu-arbor-4.1.0.tgz","_integrity":"sha512-IxGyazKGd4l3IGkjuDeOIYW1Im647hvz32fq63+qH5YYlWpqxOxbZ9UFyciSJJme3SzIXjGD/M1GE4cALQi14A==","repository":{"url":"git+https://github.com/fellwork/aihu.git","type":"git","directory":"packages/arbor"},"_npmVersion":"10.8.2","description":"Reactive component tree (the rendering layer that consumes @aihu/signals).","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@aihu/signals":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/arbor_4.1.0_1785917378996_0.4232413036734184","host":"s3://npm-registry-packages-npm-production"}},"4.1.1":{"name":"@aihu/arbor","version":"4.1.1","license":"MIT","_id":"@aihu/arbor@4.1.1","maintainers":[{"name":"srmcguirt","email":"srmcguirt@gmail.com"}],"homepage":"https://github.com/fellwork/aihu/tree/main/packages/arbor#readme","bugs":{"url":"https://github.com/fellwork/aihu/issues"},"dist":{"shasum":"cf3bdace5156157eb484c5a1ba2874e4d9d97c8e","tarball":"https://registry.npmjs.org/@aihu/arbor/-/arbor-4.1.1.tgz","fileCount":15,"integrity":"sha512-5DUY89yBTehBhY8Sld9W3V1/zfYsYq7Xdvt4SI4yFkTQ+NyZhMPaIsxt+iL0GLdYKVrSnGHO5sB3823cFAonOw==","signatures":[{"sig":"MEUCIC3v9f3PLG2OxM51vgP8S0BNQTb83KIyU8lqyt3e8FIQAiEA/Jsp/4uX6GkyjaVcVTPOgWIox2zRLsIA3k2oc3zJBzo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aihu%2farbor@4.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":154896},"main":"./dist/index.js","type":"module","_from":"file:/tmp/tmp.bTMuHjWy9e/aihu-arbor-4.1.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./hydrate":{"types":"./dist/hydrate.d.ts","import":"./dist/hydrate.js"}},"scripts":{"build":"rolldown -c && node scripts/mangle-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"srmcguirt","email":"srmcguirt@gmail.com"},"_resolved":"/tmp/tmp.bTMuHjWy9e/aihu-arbor-4.1.1.tgz","_integrity":"sha512-5DUY89yBTehBhY8Sld9W3V1/zfYsYq7Xdvt4SI4yFkTQ+NyZhMPaIsxt+iL0GLdYKVrSnGHO5sB3823cFAonOw==","repository":{"url":"git+https://github.com/fellwork/aihu.git","type":"git","directory":"packages/arbor"},"_npmVersion":"10.8.2","description":"Reactive component tree (the rendering layer that consumes @aihu/signals).","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@aihu/signals":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/arbor_4.1.1_1786247238872_0.7198191021575966","host":"s3://npm-registry-packages-npm-production"}},"4.1.2":{"name":"@aihu/arbor","version":"4.1.2","license":"MIT","_id":"@aihu/arbor@4.1.2","maintainers":[{"name":"srmcguirt","email":"srmcguirt@gmail.com"}],"homepage":"https://github.com/aihu-project/aihu-dom/tree/main/packages/arbor#readme","bugs":{"url":"https://github.com/aihu-project/aihu-dom/issues"},"dist":{"shasum":"252fccf1c536f59331e70bc60fb37213b31373d8","tarball":"https://registry.npmjs.org/@aihu/arbor/-/arbor-4.1.2.tgz","fileCount":19,"integrity":"sha512-yrt8Ql828nwSPS+JwlV474ZqVpDhjolm+sX/HVDXf1/pqwUdOJBfa1/FIBCih4qYUotTv0gs9fqOvT9AtX+mxA==","signatures":[{"sig":"MEUCIQD0+xP5j01c54k3bkb90xN66iKUn9rO2SGs4KQwgvvaRgIgb8VnWEotIsYYpPZwEL8sPggyUks9jrqCeNL2pQtg2i8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":165153},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./hydrate":{"types":"./dist/hydrate.d.ts","import":"./dist/hydrate.js"},"./progressive":{"types":"./dist/progressive.d.ts","import":"./dist/progressive.js"}},"gitHead":"058ed2d523cb68197eaf64e5a3a5389dab9d4669","scripts":{"build":"rolldown -c && node scripts/mangle-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"srmcguirt","email":"srmcguirt@gmail.com"},"repository":{"url":"git+https://github.com/aihu-project/aihu-dom.git","type":"git","directory":"packages/arbor"},"_npmVersion":"11.19.0","description":"Reactive component tree (the rendering layer that consumes @aihu/signals).","directories":{},"sideEffects":false,"_nodeVersion":"26.2.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@aihu/signals":"^0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/arbor_4.1.2_1788744094476_0.6804474536664438","host":"s3://npm-registry-packages-npm-production"}},"4.1.3":{"name":"@aihu/arbor","version":"4.1.3","license":"MIT","type":"module","main":"./dist/index.js","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./hydrate":{"types":"./dist/hydrate.d.ts","import":"./dist/hydrate.js"},"./progressive":{"types":"./dist/progressive.d.ts","import":"./dist/progressive.js"}},"sideEffects":false,"scripts":{"build":"rolldown -c && node scripts/mangle-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"peerDependencies":{"@aihu/signals":"^0.5.1"},"description":"Reactive component tree (the rendering layer that consumes @aihu/signals).","repository":{"type":"git","url":"git+https://github.com/aihu-project/aihu-dom.git","directory":"packages/arbor"},"homepage":"https://github.com/aihu-project/aihu-dom/tree/main/packages/arbor#readme","bugs":{"url":"https://github.com/aihu-project/aihu-dom/issues"},"publishConfig":{"access":"public"},"_id":"@aihu/arbor@4.1.3","_integrity":"sha512-ocIi3CPyxDbRATUNyzDrY/3Ox4MwZFBzEfZsS8bvhW3P9cBCCSgUR5GNes6H7lwN113O90x5TTCGVPscsE43rQ==","_resolved":"/home/runner/work/_temp/aihu-dom-pack/aihu-arbor-4.1.3.tgz","_from":"file:/home/runner/work/_temp/aihu-dom-pack/aihu-arbor-4.1.3.tgz","_nodeVersion":"22.14.0","_npmVersion":"11.5.1","dist":{"integrity":"sha512-ocIi3CPyxDbRATUNyzDrY/3Ox4MwZFBzEfZsS8bvhW3P9cBCCSgUR5GNes6H7lwN113O90x5TTCGVPscsE43rQ==","shasum":"1d80fa12e05151d2c1085250dfa1f8eaae5ee7f7","tarball":"https://registry.npmjs.org/@aihu/arbor/-/arbor-4.1.3.tgz","fileCount":19,"unpackedSize":167847,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aihu%2farbor@4.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAWKEl9XCJtuk86BQMft5sefnOpaSzBQSFslB/Ibrip+AiA0+QvuNKTYfyCWWXNuHHJJufhM7oy+7KUVw0FM0fCUQw=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2d3fb243-f961-4ee1-9b23-966937097e07"}},"directories":{},"maintainers":[{"name":"srmcguirt","email":"srmcguirt@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/arbor_4.1.3_1789249549588_0.10419755279164145"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-05T19:36:36.365Z","modified":"2026-09-12T21:45:50.133Z","0.1.0":"2026-05-05T19:36:36.705Z","0.1.1":"2026-05-05T22:04:15.356Z","0.1.2":"2026-05-07T15:26:31.019Z","0.1.3":"2026-05-08T08:00:49.967Z","0.1.4":"2026-05-09T16:46:57.540Z","0.1.5":"2026-05-28T01:54:28.549Z","1.0.0":"2026-06-05T20:23:27.535Z","2.0.0":"2026-07-18T15:52:00.890Z","0.0.0-canary-331b0151f7756608a00168b6de1d3b7bae639113":"2026-07-22T11:37:39.396Z","3.0.0":"2026-07-23T15:57:55.027Z","4.0.0":"2026-07-26T01:14:32.023Z","4.1.0":"2026-08-05T08:09:39.141Z","4.1.1":"2026-08-09T03:47:19.014Z","4.1.2":"2026-09-07T01:21:34.625Z","4.1.3":"2026-09-12T21:45:49.759Z"},"bugs":{"url":"https://github.com/aihu-project/aihu-dom/issues"},"license":"MIT","homepage":"https://github.com/aihu-project/aihu-dom/tree/main/packages/arbor#readme","repository":{"type":"git","url":"git+https://github.com/aihu-project/aihu-dom.git","directory":"packages/arbor"},"description":"Reactive component tree (the rendering layer that consumes @aihu/signals).","maintainers":[{"name":"srmcguirt","email":"srmcguirt@gmail.com"}],"readme":"# @aihu/arbor\n\n> **Aihu** — agentic discovery and interaction, for human purpose.\n\nReactive component tree (the rendering layer that consumes @aihu/signals).\n\nPart of the **runtime core** layer of the Aihu meta-framework. Shipped to the client; sized via `bun run size`. The runtime core is dep-free and stacks under `@aihu/runtime` → `@aihu/router` → `@aihu/server` → `@aihu/app`.\n\n<!-- BEGIN_HANDWRITTEN: prose -->\nDOM materialization primitives for the [aihu](../../README.md) project. Build a tree of `branch` / `leaf` nodes, hand it to `mount`, and the renderer wires every reactive binding once and tears it down LIFO when the scope disposes. No JSX runtime, no virtual DOM, no scheduler queue — just direct DOM operations against the live nodes.\n\n**Status:** v0 surface frozen (Phase 3). Spec: [`.team/phase-3/spec-arbor.md`](../../.team/phase-3/spec-arbor.md). Bundle ≤ 2 kB gzipped.\n\n## Hello mount\n\n```ts\nimport { signal } from '@aihu/signals'\nimport { branch, leaf, mount } from '@aihu/arbor'\n\nconst [count, setCount] = signal(0)\n\nconst tree = branch('div', { class: 'counter' }, [\n  leaf('Count: '),\n  leaf([count, setCount]),    // signal as text content (reactive)\n  branch('button', { onClick: () => setCount(c => c + 1) }, [\n    leaf('+1'),\n  ]),\n])\n\nconst scope = mount(tree, document.body)\n// later…\nscope.dispose()  // removes the DOM and tears down every binding LIFO\n```\n\n## API\n\n### `branch(tag, attrs?, children?): Branch`\n\nConstructs a branch node. `tag` is the element tag name, or `null` for a fragment (children mount directly into the parent).\n\n```ts\nbranch('section', { id: 'main' }, [ leaf('hi') ])\nbranch(null, null, [ leaf('a'), leaf('b') ])  // fragment\n```\n\n### `leaf(value): Leaf` / `leaf.element(tag, attrs?): Leaf`\n\nTwo shapes share one symbol:\n\n- `leaf(value)` — text leaf. `value` is `string` (static) or a `Signal<string>` tuple (reactive).\n- `leaf.element(tag, attrs?)` — terminal element leaf for `<img>`, `<br>`, `<input>`, `<hr>`, etc.\n\n```ts\nleaf('hi')                     // static text\nleaf([greeting, setGreeting])  // reactive text\nleaf.element('img', { src: '/logo.png' })\nleaf.element('hr')\n```\n\n### `mount(node, host): MountScope`\n\nMaterializes `node` into `host` (an `Element` or `ShadowRoot`) synchronously. By the time `mount` returns, every reactive binding has run once and subscribed to its signal, every static attr is applied, and every DOM node is appended.\n\n```ts\nconst scope = mount(tree, document.querySelector('#app')!)\nscope.dispose()         // synchronous teardown, idempotent\nscope.agent             // sub-project #7 stub (don't use in v0)\nscope.serialize()       // throws ArborNotImplementedError in v0\n```\n\n## Attribute semantics\n\nInside `attrs`, each `[key, value]` pair is dispatched at mount time:\n\n| Detection | Treatment |\n|---|---|\n| `key.startsWith('on')` AND value is a function | `el.addEventListener(key.slice(2).toLowerCase(), value)` |\n| `Array.isArray(value)` (a Signal tuple `[Read, Write]`) | Wired through an effect — the DOM property/attribute tracks the signal. |\n| `string` / `number` / `boolean` | Static. Set once at mount; never re-applied. |\n\nProperty vs attribute split: if `key in el` (e.g. `disabled`, `value`, `className`), the value is set as a DOM property; otherwise `setAttribute(key, String(value))`. See [`.team/phase-3/spec-arbor.md`](../../.team/phase-3/spec-arbor.md) §2.4.\n\n> **Trust boundary.** `attrs` is the renderer's trust boundary. The compiler is responsible for never emitting attacker-controllable keys. If you call `branch()` / `leaf.element()` from hand-written code with user-controlled data, **do not** let user data flow into attribute *keys* — keys like `innerHTML`, `srcdoc`, `outerHTML` are real DOM properties and the runtime will assign them directly. Allow-list known-safe keys at your boundary.\n\n## Disposal\n\n`MountScope.dispose()` runs **LIFO**: deepest/latest effects first (so parent effects don't re-run against partially-cleaned children), then DOM root removal. Idempotent — calling twice is a no-op.\n\n```ts\nconst a = mount(treeA, host)\nconst b = mount(treeB, host)\nb.dispose()   // tears down b's effects then removes its roots\na.dispose()   // independent\n```\n\n## Coming in v1 (today: stubs that throw)\n\n```ts\nimport { when, each } from '@aihu/arbor'\nwhen(condition, () => branch(...))                     // ArborNotImplementedError in v0\neach(list, item => item.id, item => branch(...))      // ArborNotImplementedError in v0\n```\n\nThe signatures are locked; the v1 reconciler will swap the bodies.\n\n## Pairing with non-`@aihu/signals` reactive systems\n\nArbor only requires the signal shape: a tuple `readonly [Read<T>, Write<T>]` where `Read<T> = () => T`. Anything that exposes that shape works. The runtime detects it via `Array.isArray(value)` (per the [Deviation #11 invariant](../../.team/phase-3/spec-arbor.md)).\n\n## Tests\n\n```bash\nbunx vitest run packages/arbor\n```\n\nIncludes an arbor microbench (`tests/bench.test.ts`) that mounts 10K static-leaf nodes in JSDOM.\n<!-- END_HANDWRITTEN: prose -->\n\n## Install\n\n<!-- BEGIN_AUTOGEN: install -->\n<!-- regenerate: bun scripts/sync-readme.ts (also runs in pre-commit + CI) -->\n\n```bash\nnpm install @aihu/arbor\n# or\nbun add @aihu/arbor\n```\n\n<sub><i>Auto-generated against `@aihu/arbor@4.1.1`.</i></sub>\n\n<!-- END_AUTOGEN: install -->\n\n## Package facts\n\n<!-- BEGIN_AUTOGEN: stats -->\n<!-- regenerate: bun scripts/sync-readme.ts (also runs in pre-commit + CI) -->\n\n| | |\n|---|---|\n| **Version** | `4.1.1` |\n| **Tier** | A — Reactive runtime core — DOM materialization layer |\n| **Bundle size** | 3.10 kB (gz) — limit 3200 B |\n| **Published files** | 3 entries |\n| **License** | MIT |\n\n<sub><i>Auto-generated against `@aihu/arbor@4.1.1`.</i></sub>\n\n<!-- END_AUTOGEN: stats -->\n\n## Exports\n\n<!-- BEGIN_AUTOGEN: exports -->\n<!-- regenerate: bun scripts/sync-readme.ts (also runs in pre-commit + CI) -->\n\n| Subpath | ESM | CJS |\n|---|---|---|\n| `.` | `./dist/index.js` | `—` |\n| `./hydrate` | `./dist/hydrate.js` | `—` |\n| `./progressive` | `./dist/progressive.js` | `—` |\n\n<sub><i>Auto-generated against `@aihu/arbor@4.1.1`.</i></sub>\n\n<!-- END_AUTOGEN: exports -->\n\n## Dependencies\n\n<!-- BEGIN_AUTOGEN: deps -->\n<!-- regenerate: bun scripts/sync-readme.ts (also runs in pre-commit + CI) -->\n\n**Peer dependencies:**\n\n- `@aihu/signals` — `workspace:^`\n\n<sub><i>Auto-generated against `@aihu/arbor@4.1.1`.</i></sub>\n\n<!-- END_AUTOGEN: deps -->\n\n## See also\n\n<!-- BEGIN_AUTOGEN: see-also -->\n<!-- regenerate: bun scripts/sync-readme.ts (also runs in pre-commit + CI) -->\n\n- [Phase 3 spec (arbor)](../../.team/phase-3/spec-arbor.md)\n- [bench/arbor](../../bench/arbor/RESULTS.md)\n- [@aihu/signals](../signals)\n- [@aihu/runtime](../runtime)\n- [Aihu framework root](../../README.md)\n\n<sub><i>Auto-generated against `@aihu/arbor@4.1.1`.</i></sub>\n\n<!-- END_AUTOGEN: see-also -->\n\n## License\n\n<!-- BEGIN_AUTOGEN: license -->\n<!-- regenerate: bun scripts/sync-readme.ts (also runs in pre-commit + CI) -->\n\nMIT — see [LICENSE](../../LICENSE).\n\n<sub><i>Auto-generated against `@aihu/arbor@4.1.1`.</i></sub>\n\n<!-- END_AUTOGEN: license -->\n","readmeFilename":"README.md"}