{"_id":"@akaoio/zen","_rev":"36-e8ccde6b2702823294b1913adc698f5e","name":"@akaoio/zen","dist-tags":{"latest":"1.0.35"},"versions":{"1.0.0":{"name":"@akaoio/zen","version":"1.0.0","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.0","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"ios":"browser.ios.js","tsd":{"directory":"types"},"dist":{"shasum":"05256df9a794e15133a625258e05ca86f756c3b0","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.0.tgz","fileCount":265,"integrity":"sha512-OmtRME84Z994i9QiXWKTFWxh+zj5/XsZTFmrI3Ga5/m43xB6FPmG0bkF/5EQJL6+0EraA9xFjFSEKXRJqy/Z3A==","signatures":[{"sig":"MEYCIQDngD6T/kKpph0TpBXK2q+sPUZi3LrixkdJRjulH4uu4wIhAPnTi4M6H85y/ManmHZ12V9YHzsqBCqqd8ITnv0TFo1G","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1653574},"main":"index.js","type":"module","types":"index.d.ts","android":"browser.android.js","browser":"browser.js","engines":{"node":">=0.8.4"},"gitHead":"cce31ccc08de4f7b936b64f086e9368cc1aa337d","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node --prof examples/zen-http.js","docker":"hooks/build","format":"prettier --write .","uglify":"node lib/uglify.js","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"uglifyjs zen.js --module -o zen.min.js -c -m","test:core":"npm run clean && cross-env ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run uglify","test:browser":"playwright test","testPEN:unit":"npm run clean && mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.12.1","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","uglify-js":"^3.6.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.0_1777004148888_0.018397243421230502","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@akaoio/zen","version":"1.0.4","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.4","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"ios":"browser.ios.js","tsd":{"directory":"types"},"dist":{"shasum":"b63008ce6e5195ee7486a914fdddfc9c1363ff36","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.4.tgz","fileCount":266,"integrity":"sha512-qOrJP5PvSJQ6kSzFL12CivUkOA45XTUiobDl+j9PwJGds2BE1ldUmuKL0fg473O2RO4nALVGch0HOdpuZYJX0w==","signatures":[{"sig":"MEUCIQDR9bbwFfnzNMtOzCb5yr7eD+C/uxoHbhrzbHfxZ9oqFwIgYWxpRTUhC4x5Bkk8DEvq/BYcs2ui50pPPETxXiorXHY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1670166},"main":"index.js","type":"module","types":"index.d.ts","android":"browser.android.js","browser":"browser.js","engines":{"node":">=0.8.4"},"gitHead":"93658a208829dc29cdef6957d13f64258033d5c6","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node --prof examples/zen-http.js","docker":"hooks/build","format":"prettier --write .","uglify":"node lib/uglify.js","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"uglifyjs zen.js --module -o zen.min.js -c -m","test:core":"npm run clean && cross-env ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run uglify","test:browser":"playwright test","testPEN:unit":"npm run clean && mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.6.2","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.12.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","uglify-js":"^3.6.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.4_1777104021958_0.7076293992751459","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@akaoio/zen","version":"1.0.5","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.5","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"ios":"browser.ios.js","tsd":{"directory":"types"},"dist":{"shasum":"3f378c2abcfbd812cfd64146eec48f6bef27de8b","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.5.tgz","fileCount":267,"integrity":"sha512-LGtKSoN/OKrQNFIIRiQ2c+JV17LtVKM0ZtYsGBE+kzCwgzDv+yO4mEu1ye8ZGw8ZSGaQp/s6sn2OqqSu+H2wFQ==","signatures":[{"sig":"MEQCIGHvPAyZB8RVpgzEWxjyiCchPcnC4P2foDpNp643EG/9AiB/3DSncRsroRdDCr/l0UVNB5Qj0Rhb22tTn5FwguTB7w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1778897},"main":"index.js","type":"module","types":"index.d.ts","android":"browser.android.js","browser":"browser.js","engines":{"node":">=0.8.4"},"gitHead":"ce3101bd6d45b4b1e79514d024da72c9a5ff2adc","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node --prof relay.js","docker":"hooks/build","format":"prettier --write .","uglify":"node lib/uglify.js","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run uglify","test:browser":"playwright test","testPEN:unit":"npm run clean && mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.5_1777310245463_0.8714374920060428","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"@akaoio/zen","version":"1.0.6","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.6","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"tsd":{"directory":"types"},"dist":{"shasum":"1627f5de016c108028e2cd5fb853384467b8f685","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.6.tgz","fileCount":266,"integrity":"sha512-NiT2njH8GwG8J3+egamAT/dydC2Mj405oI/dqdU7v/PZbsBuHTeoVgXMTo3C/lECynGR4qNJKE+ef6KXDG0WAA==","signatures":[{"sig":"MEQCIC1oz3lUZolnwaWxIMUNgi5ZCkhyhEewb4SUOG9kZJawAiAs2zxJRc1dgy9xJzBumisMXU2220pMrdrt9QHnP6GAfA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1765742},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"f6e48644819ddb46c8c36a472014c30890e063c3","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node --prof relay.js","docker":"hooks/build","format":"prettier --write .","uglify":"node lib/uglify.js","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run uglify","test:browser":"playwright test","testPEN:unit":"npm run clean && mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"10.8.2","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.6_1777362644578_0.7547880228851065","host":"s3://npm-registry-packages-npm-production"}},"1.0.7":{"name":"@akaoio/zen","version":"1.0.7","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.7","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"tsd":{"directory":"types"},"dist":{"shasum":"862e81ca85e5d5ec346276c9fd8a17c85169ec8b","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.7.tgz","fileCount":272,"integrity":"sha512-NLLi4mGtXKZ4yCV58hekh92q1hI+pOnNdXIPDKyN0qr/nX32NnfO3+3rorEmUhjXysPvldwl+nbJiW4bWokRbQ==","signatures":[{"sig":"MEYCIQCOMJXud1bNepSafeVqGaKP+hkmGOVVnsTE+iNGnh0EbQIhAIxd33m+CxTZpWwwgZ7cMzVX/qWnTficZMdac8CFX3JI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1815969},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"21b11457138e616aae35744ef90fd934691495bb","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node --prof relay.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run minify","test:browser":"playwright test","testPEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.7_1777473734801_0.013171105027622199","host":"s3://npm-registry-packages-npm-production"}},"1.0.8":{"name":"@akaoio/zen","version":"1.0.8","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.8","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.min.js"},"tsd":{"directory":"types"},"dist":{"shasum":"6f1ba93814793810f2a5d020a3e7c2a86d2d6288","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.8.tgz","fileCount":275,"integrity":"sha512-vZPfeP80OMPszFGHoqGVeHhuiLQ9/jzJrOCSW6UPm+iUZbR14BQSDCAfOkYQ7KMlEtd6s7/bqW73AcJFjCi3kQ==","signatures":[{"sig":"MEUCIEgiMWaopvuvdkhcXyIozJoadLAIoawzcTf0dZ9AnUfrAiEAmpqORXo1AeZY07m98eW7CAjQgWam87qK2kywC2yYX6A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1842072},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"a01366045198a70c29cd05670001ea15e25ac2a1","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node --prof relay.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run minify","test:browser":"playwright test","testPEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.8_1777485007191_0.027834732708690302","host":"s3://npm-registry-packages-npm-production"}},"1.0.9":{"name":"@akaoio/zen","version":"1.0.9","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.9","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.min.js"},"tsd":{"directory":"types"},"dist":{"shasum":"8ac6d943d2a5f9a9529540c489fb44ea833c7d13","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.9.tgz","fileCount":276,"integrity":"sha512-k0ren1IkKbwaQMN6sDyEUejFM0eezyXuZWOFf+Qtug/szhaFOjgmNGvioqj8TG0cUbghtZ7h37N9asG7NmLywA==","signatures":[{"sig":"MEYCIQC1Vrvc/LLHRRUQyNv/805l7lInzBvjYt6Jyxng0jEb4AIhAIog3hp8a5CkN+c+anIFaqyf3I0ZeUGc8jkomgZWCbvz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1842415},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"157f6c0147b1db43be2e57ff661d857f0d90cc53","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node --prof relay.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run minify","test:browser":"playwright test","testPEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.9_1777485956934_0.1093950819263132","host":"s3://npm-registry-packages-npm-production"}},"1.0.10":{"name":"@akaoio/zen","version":"1.0.10","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.10","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.min.js"},"tsd":{"directory":"types"},"dist":{"shasum":"7119276136db252a6ed63a9de9722764627c968e","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.10.tgz","fileCount":285,"integrity":"sha512-rBh7NvTe1JiZere9lgH8vXVa/RplE/jU4Oq8T07Y8gOBZ7BPM/PRAK06MDH9PJFoAi2D9AS8jMywgVD2YlIu5w==","signatures":[{"sig":"MEUCIDhVXbM8pICtVs1Rtg3E2Xbhs22T+K0sknyD/FiPKYpKAiEAs8zyyyDQjTnaVU5JRhX5OV8Z7IolBxIkC21Em6zAAY0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1934228},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"2a8431ca748c16b7f58671ab83bb9be09813b3ce","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node --prof relay.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","test:ci":"npm test && npm run test:browser","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js --timeout 30000","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run minify","test:browser":"playwright test","testPEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.10_1777778128252_0.9209016858384487","host":"s3://npm-registry-packages-npm-production"}},"1.0.11":{"name":"@akaoio/zen","version":"1.0.11","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.11","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.min.js"},"tsd":{"directory":"types"},"dist":{"shasum":"851606bfc19526f405d7719d23b4ba5146bba6e5","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.11.tgz","fileCount":285,"integrity":"sha512-1AhqXYcB8X/JlHlITvYkUPV3aOoiWnlrUQEUegklajjtCfVRXlyQhsHHBbydUtT86IATcuV7SiazgwtjBKtopg==","signatures":[{"sig":"MEQCIEVg7c5TqXryHTdhehUi7iWv5MGxccj7f6N8PJO4IQeAAiBCUb6/6xBhEjcyxtLOseCOuDvueaVMD10JknqHQnZ3Cw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1966350},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"9d8374f1021be5abee12f352e91e89e9fbb6ec1a","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node relay.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","test:ci":"npm test && npm run test:browser","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js --timeout 30000","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","start:prof":"node --prof relay.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","test:repeat":"node script/retest.js 20","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run minify","test:browser":"playwright test","testPEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.11_1777807178549_0.522459697642746","host":"s3://npm-registry-packages-npm-production"}},"1.0.12":{"name":"@akaoio/zen","version":"1.0.12","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.12","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.min.js"},"tsd":{"directory":"types"},"dist":{"shasum":"47199b77b44faae7fa16bd7c875fd836786fb880","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.12.tgz","fileCount":289,"integrity":"sha512-L6G+WwisbB7mSOx0efE7DtXysP79pQSbSwakK3Yn0MV8LtNpBH5WdHw8sd1/l0DObZ//krTxDDBaPf6CaigtqA==","signatures":[{"sig":"MEYCIQDDrVlfown204gaZQzPGU79X394ECq9Z+dKllEJilfpyAIhAJ+B6p3swmFzZbJnhWwkjlb+7hnh+GB1ZLx61T0RSBRO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2028191},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"2f0b3dc12df495345f27858162fd1169d2213c69","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node relay.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","test:ci":"npm test && npm run test:browser","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","start:prof":"node --prof relay.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","test:repeat":"node script/retest.js 20","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run minify","test:browser":"playwright test","testPEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/mesh/dam.js","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.12_1777909321586_0.04910121722797922","host":"s3://npm-registry-packages-npm-production"}},"1.0.13":{"name":"@akaoio/zen","version":"1.0.13","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.13","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.min.js"},"tsd":{"directory":"types"},"dist":{"shasum":"6bb598106bda3ec5b1ed9c2049eb66c9391ee525","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.13.tgz","fileCount":289,"integrity":"sha512-wOx4ggytC6JCo2t07oz7i+aK+lzIpq9g0T1I8EWHFSrmBHPv+O2a9uP3DjdiLurMLc+pkqKUk7a+pvHQveIAGg==","signatures":[{"sig":"MEUCIQCuEyKytvN1yZzywBqe2+gdLmobzq6DCKuoA8Nb9sxPTAIga33XZw+DUaHM76ajJmRrMfeOcf02iv8mBR0X6mao7+w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2028191},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"287e44df3332899430de99ab86773c5d34487d24","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node relay.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","test:ci":"npm test && npm run test:browser","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","start:prof":"node --prof relay.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","test:repeat":"node script/retest.js 20","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run minify","test:browser":"playwright test","testPEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/mesh/dam.js","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.13_1777909909182_0.776594296880307","host":"s3://npm-registry-packages-npm-production"}},"1.0.14":{"name":"@akaoio/zen","version":"1.0.14","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.14","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.min.js"},"tsd":{"directory":"types"},"dist":{"shasum":"bfe513b048528b10d4549183a77d3e5a0243f722","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.14.tgz","fileCount":289,"integrity":"sha512-dkE04VQHuWpYBcegyoycnT2I01KVtSKY2pSy2m/qWGiJHTn96NmShWKFeFZnbQVnwTnF75r00M+Oj0wslEkBDw==","signatures":[{"sig":"MEYCIQDY2/FiYW5D7AcEUIpsuNi9DKrQwaO7sHMoIICi4mY4ZQIhAJFPPO2WjmA5c4de5EnTChUBmiDQ9iQ8bq3NAY71e0Pp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2028191},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"b8bc7458be13e5ee24a5f3a609a8f7136d15ea32","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node relay.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","test:ci":"npm test && npm run test:browser","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","start:prof":"node --prof relay.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","test:repeat":"node script/retest.js 20","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run minify","test:browser":"playwright test","testPEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/mesh/dam.js","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.14_1777910697815_0.857742976434094","host":"s3://npm-registry-packages-npm-production"}},"1.0.15":{"name":"@akaoio/zen","version":"1.0.15","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.15","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.min.js"},"tsd":{"directory":"types"},"dist":{"shasum":"85bc4de8ecad2480dc5d17acd76df15c174b0aa1","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.15.tgz","fileCount":289,"integrity":"sha512-YIp3xDrnQQDJeRhZSX6XXolwUydV0RJc352caHBP8KfgUmZOfFHuIFHtyWTDon6Xgtrl4+d9IFEuf2Tuvef9NQ==","signatures":[{"sig":"MEUCIQCXGgArlBm9qc4gdktdX4SgJeIi7+CbvPeQsv2BKL7fqAIgM+A9Fp3mKvV2LR1MCLLGy5D5iZs4gGvy+B1DqjA4W3M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2028910},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"9459c37dde6e692051099959b7032391236881ab","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node relay.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","test:ci":"npm test && npm run test:browser","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","start:prof":"node --prof relay.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","test:repeat":"node script/retest.js 20","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run minify","test:browser":"playwright test","testPEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/mesh/dam.js","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.15_1777919907009_0.7278178323184294","host":"s3://npm-registry-packages-npm-production"}},"1.0.16":{"name":"@akaoio/zen","version":"1.0.16","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.16","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.min.js"},"tsd":{"directory":"types"},"dist":{"shasum":"37f2477e72eaa5f68a99df22d7bc197cbf6df442","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.16.tgz","fileCount":291,"integrity":"sha512-5fpWUVp5rawZSydb1XQCPIsEjuaFXBYPXgPVs0hSbojxoxs2Ix9Ro+VoupFdXR72RhaCMTdrEBkzmqMSZQY8EA==","signatures":[{"sig":"MEUCIQCZexkqRWbfAFaVW+rH/u58TQPeAnA6/IKlHgDZv31zUgIgQTHjbI/Z1vgM4lbHsHKPU2rJRpXxKxsgPTQ2adnNDM4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2045103},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"c65c6ddafc0c16502c18da98b8efa68e7dfd0d73","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node relay.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","test:ci":"npm test && npm run test:browser","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","start:prof":"node --prof relay.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","test:repeat":"node script/retest.js 20","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run minify","test:browser":"playwright test","testPEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/mesh/dam.js","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.16_1777967448946_0.4170648058794333","host":"s3://npm-registry-packages-npm-production"}},"1.0.17":{"name":"@akaoio/zen","version":"1.0.17","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.17","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.min.js"},"tsd":{"directory":"types"},"dist":{"shasum":"5aa37d9eb51f1e0b3c7015d66d0cd9910a3ded33","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.17.tgz","fileCount":294,"integrity":"sha512-c7FQBR8HJvrIGgLED0eiU00qqppcX3lnMlbabh71FI85xHS7m1IydotnimSuXiNLupqyOpTxaPcj2H3Rj8Ppxg==","signatures":[{"sig":"MEUCIQDIOYlWq1+SLa20gBH7AMg/983FgKUQXeYAJSNW+syOuAIgMumsDYmL9bDBW1ceW1Z3nqi8OhLHuL53LOz1d+nGcmk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2058714},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"fd940f2e94ef85f4e25ed330e8d2d7570220252d","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node relay.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","test:ci":"npm test && npm run test:browser","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","start:prof":"node --prof relay.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","test:repeat":"node script/retest.js 20","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run minify","test:browser":"playwright test","testPEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.17_1777979380510_0.9948061930212306","host":"s3://npm-registry-packages-npm-production"}},"1.0.18":{"name":"@akaoio/zen","version":"1.0.18","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.18","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.min.js"},"tsd":{"directory":"types"},"dist":{"shasum":"8f2327c178ceb77e85263e7597485e6acc73d213","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.18.tgz","fileCount":296,"integrity":"sha512-I+8Il7sOeRP6Rjdx22+mHGNk0WOghPVzpBomsXcSWhKy9i8rIHwI0FAQOaSC3+s4NDHT751ETWk/rZz6j64SZw==","signatures":[{"sig":"MEUCIHoEPiVOWMpl3xf1uvZU937Gk49haG4GNeOBJ+R2R6tQAiEA5Q1EjwkpRWBHgQvKjtVJ3mRkpmWE8LFT/JEbYxjTRRY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2071544},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"8cc9cc885ab27d12ef3d9ddc92fc46f5ebab7e89","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node relay.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","test:ci":"npm test && npm run test:browser","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","start:prof":"node --prof relay.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","test:repeat":"node script/retest.js 20","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run minify","test:browser":"playwright test","testPEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.18_1777999889319_0.20755862283785875","host":"s3://npm-registry-packages-npm-production"}},"1.0.19":{"name":"@akaoio/zen","version":"1.0.19","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.19","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.min.js"},"tsd":{"directory":"types"},"dist":{"shasum":"417f4311e24c6faf6915061ed2daff8fedc06800","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.19.tgz","fileCount":296,"integrity":"sha512-8V6t02sVJey9Y+r/Q0B3zBXCRONwKVMDrdAmt3X8Hjnjn/Qr9jJBbMbeTjaF7ToxzkP/Tbw/YeoYhmL8NGOYOQ==","signatures":[{"sig":"MEYCIQCrGrZw/bxORff30MD5zR1GNzkzWDrjrKnZdmlSD5aHCQIhAIJQnkRDqo/drrIMgFx7IwtU8lrF0Zsuppo6fTH1egRZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2072994},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"ddf5d5425df97d478394a57d53da25864f0b88bf","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node relay.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","test:ci":"npm test && npm run test:browser","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","start:prof":"node --prof relay.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","test:repeat":"node script/retest.js 20","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run minify","test:browser":"playwright test","testPEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.19_1778002919315_0.9476351163084535","host":"s3://npm-registry-packages-npm-production"}},"1.0.20":{"name":"@akaoio/zen","version":"1.0.20","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.20","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.min.js"},"tsd":{"directory":"types"},"dist":{"shasum":"4b7d9bf3c0946c80c243673cacaf4e5c7296a6c0","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.20.tgz","fileCount":296,"integrity":"sha512-f/MCE2XUHU3tkw2N9JDqoYdX/HeXx+e0sw1qxAw2ozV8ARnxGPvfQe4KCr0vzoK4dTLyE5zvMJKIa8WQu4mHMg==","signatures":[{"sig":"MEYCIQD4Ty8qxK4p/Nhwt8WjSZvh+7t5s9xRqy9IhD5DSTvwyQIhAJazNsSEnKDTx2clqn/2vEww55+UaGe6cjVEmyARlNSE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2073145},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"1f7125b75ada84b50c994d563688f5b6d6663be3","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node relay.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","test:ci":"npm test && npm run test:browser","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","start:prof":"node --prof relay.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","test:repeat":"node script/retest.js 20","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run minify","test:browser":"playwright test","testPEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"25.8.2","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.20_1778040135412_0.8385478196699789","host":"s3://npm-registry-packages-npm-production"}},"1.0.21":{"name":"@akaoio/zen","version":"1.0.21","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.21","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.min.js"},"tsd":{"directory":"types"},"dist":{"shasum":"12c8fafa962aa22f776007186086560ab99513b4","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.21.tgz","fileCount":296,"integrity":"sha512-pu5TlEe4H7XKXR8tFz/tyb01vRPqtik5ze5EUtRt93L7ES1Y6brOQGT+WEVJ6WNx0EjElyesY3AMH8C5M1Dmfg==","signatures":[{"sig":"MEUCIB07EY0YTlU3jXA+e7aP1/xIlaD8jvz6yIvd/wXcixDjAiEAgV2kr3JwHfkaOJzz4ED5yikFvKvFDnY3hu+lFVVc1Ik=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2073306},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"ef241f228ce6930d01802d4409452b765b7411db","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node relay.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","test:ci":"npm test && npm run test:browser","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","start:prof":"node --prof relay.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","test:repeat":"node script/retest.js 20","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run minify","test:browser":"playwright test","testPEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"25.8.2","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.21_1778041301747_0.47942364685006456","host":"s3://npm-registry-packages-npm-production"}},"1.0.22":{"name":"@akaoio/zen","version":"1.0.22","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.22","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.js"},"tsd":{"directory":"types"},"dist":{"shasum":"082d1bc914ccac31780be7ecab70b20745008616","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.22.tgz","fileCount":317,"integrity":"sha512-RlUYXVTGHCy3tbfu2xIamjWqTf5R+78jlUMzoRpGv2qJhKOhrQ/BUNAN8jpGhM1L2RdcQ9Foa8z/X1L3YBh+yA==","signatures":[{"sig":"MEYCIQCm23zspGNIGOjswgIiiBK/q3ii4fQd4JlkoDveGOlA4wIhAL4ya/RSIxjKomhalJ0k7WHVeQJy3K0FBryo4IePrz34","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11967841},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"61737bb8c327a55bbbe28db1bb2bf37fb000e13e","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run buildZEN && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run buildRelease","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node relay.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","mcp:dev":"node lib/mcp.js","test:ci":"npm test && npm run test:browser","testPEN":"npm run buildZEN && npm run testPEN:unit","testZEN":"npm run buildZEN && npm run testZEN:unit","buildPEN":"node lib/builder/pen.js","buildZEN":"npm run buildPEN && npm run buildCrypto && node lib/builder/zen.js && npm run minifyZEN","test:all":"node test/all.js","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:e2e":"node test/e2e/integration.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","minifyZEN":"terser zen.js --module -o zen.min.js --compress --mangle","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","start:prof":"node --prof relay.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","buildCrypto":"node lib/builder/crypto.js","mcp:testnet":"ZEN_NET=testnet node lib/mcp.js","test:repeat":"node script/retest.js 20","testRelease":"npm run test","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","buildRelease":"npm run buildZEN && npm run minify","test:browser":"playwright test","testPEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","testZEN:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","verifyRelease":"npm run buildRelease && npm run test:all","prepublishOnly":"npm run verifyRelease","test:e2e:testnet":"ZEN_NET=testnet node test/e2e/integration.js","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.22_1778500336292_0.3328162666726888","host":"s3://npm-registry-packages-npm-production"}},"1.0.24":{"name":"@akaoio/zen","version":"1.0.24","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.24","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.js"},"tsd":{"directory":"types"},"dist":{"shasum":"ad3dda0744af1194563dec466a163b7c38e6e56f","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.24.tgz","fileCount":324,"integrity":"sha512-HCf3xCuKouXWSws9n08qvW9uyqOPGskPUtWRHqEY5el4lTEXJDZIOtUMWyUqY26ZTj81QY3kX7cKsxHuUYbMAw==","signatures":[{"sig":"MEYCIQDCm9OPuHqiOMsT3oH6tKIYbHtUpCLazCAY3K317FqVjgIhAO6ymEPXYVcmzn/oPE+MxnwwfX91LhSG5Gj0RjT1Gjpq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12170562},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"eb348b3ca4b1f1d8f2eb5b65629abdf85f6e6a3a","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run build:zen && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run build:release","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node script/server.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","mcp:dev":"node lib/mcp.js","test:ci":"npm test && npm run test:browser","test:all":"node test/all.js","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:e2e":"node test/e2e/integration.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","test:pen":"npm run build:zen && npm run test:pen:unit","test:zen":"npm run build:zen && npm run test:zen:unit","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","build:pen":"node lib/builder/pen.js","build:zen":"npm run build:pen && npm run build:crypto && node lib/builder/zen.js && npm run minify:zen","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","minify:zen":"terser zen.js --module -o zen.min.js --compress --mangle","start:prof":"node --prof script/server.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","mcp:testnet":"ZEN_NET=testnet node lib/mcp.js","test:chains":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm.js --timeout 60000","test:repeat":"node script/retest.js 20","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","build:chains":"node lib/builder/chains.js","build:crypto":"node lib/builder/crypto.js","test:browser":"playwright test","test:release":"npm run test","build:release":"npm run build:zen && npm run minify","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","test:pen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","test:zen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","prepublishOnly":"npm run verify:release","verify:release":"npm run build:release && npm run test:all","test:chains:fork":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm-fork.js --timeout 180000","test:e2e:testnet":"ZEN_NET=testnet node test/e2e/integration.js","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","ethers":"^6.16.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.24_1778758785885_0.37026579269059257","host":"s3://npm-registry-packages-npm-production"}},"1.0.25":{"name":"@akaoio/zen","version":"1.0.25","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.25","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.js"},"tsd":{"directory":"types"},"dist":{"shasum":"008591826f2a7a7c81fe75c049502d8b3f0cbfaa","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.25.tgz","fileCount":318,"integrity":"sha512-S9YRUpTq3EzUSOIJ3zrmWifhUp+PeK58s6LN30VfRLSXseQ9ZAQInPnaensx5HDd3gRJN7dOUce0WlDiCkDl2A==","signatures":[{"sig":"MEUCIQDJZCRgtEG8s+meg0dfRKAHOQHyErXXJdOfHLZL2ppQGAIgBpx+1yYoyEWX9vDNM/ZGFG7uxZNsKldUvNI+TKj+eBw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12128022},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"555dc4edc0082b32560d2d06b637c85f1eed553c","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run build:zen && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run build:release","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node script/server.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","mcp:dev":"node lib/mcp.js","test:ci":"npm test && npm run test:browser","test:all":"node test/all.js","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:e2e":"node test/e2e/integration.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","test:pen":"npm run build:zen && npm run test:pen:unit","test:zen":"npm run build:zen && npm run test:zen:unit","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","build:pen":"node lib/builder/pen.js","build:zen":"npm run build:pen && npm run build:crypto && node lib/builder/zen.js && npm run minify:zen","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","minify:zen":"terser zen.js --module -o zen.min.js --compress --mangle","start:prof":"node --prof script/server.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","mcp:testnet":"ZEN_NET=testnet node lib/mcp.js","test:chains":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm.js --timeout 60000","test:repeat":"node script/retest.js 20","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","build:chains":"node lib/builder/chains.js","build:crypto":"node lib/builder/crypto.js","test:browser":"playwright test","test:release":"npm run test","build:release":"npm run build:zen && npm run minify","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","test:pen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","test:zen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","prepublishOnly":"npm run verify:release","verify:release":"npm run build:release && npm run test:all","test:chains:fork":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm-fork.js --timeout 180000","test:e2e:testnet":"ZEN_NET=testnet node test/e2e/integration.js","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","ethers":"^6.16.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.25_1778837679536_0.4382645193391561","host":"s3://npm-registry-packages-npm-production"}},"1.0.26":{"name":"@akaoio/zen","version":"1.0.26","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.26","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.js"},"tsd":{"directory":"types"},"dist":{"shasum":"7e2076e2bae3a5f92a6a05b78ae5ce1cbe9df498","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.26.tgz","fileCount":329,"integrity":"sha512-j2QtgvQqkugvJMR46vyBvc5SO9GMnxzGQt8G/CWG62cCk4ul6ALXlPkBT3cn3u+97Nw0wW0PCquWC1IShilh1A==","signatures":[{"sig":"MEQCIGKrKVx7R99GrzKQv9/bWk1X8lQCFX0HysbgPFfaRTc+AiBOd0gsypQWFgYh+OHgbKSQAqcg8mrd8KP4jAuv635PZQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12209470},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"f2630ba08f680f2aa50334200e303c800c8f0e68","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run build:zen && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run build:release","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node script/server.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","mcp:dev":"node lib/mcp.js","test:ci":"npm test && npm run test:browser","test:all":"node test/all.js","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:e2e":"node test/e2e/integration.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","test:pen":"npm run build:zen && npm run test:pen:unit","test:zen":"npm run build:zen && npm run test:zen:unit","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","build:pen":"node lib/builder/pen.js","build:zen":"npm run build:pen && npm run build:crypto && node lib/builder/zen.js && npm run minify:zen","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","minify:zen":"terser zen.js --module -o zen.min.js --compress --mangle","start:prof":"node --prof script/server.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","mcp:testnet":"ZEN_NET=testnet node lib/mcp.js","test:chains":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm.js --timeout 60000","test:repeat":"node script/retest.js 20","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","build:chains":"node lib/builder/chains.js","build:crypto":"node lib/builder/crypto.js","test:browser":"playwright test","test:release":"npm run test","build:release":"npm run build:zen && npm run minify","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","test:pen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","test:zen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","prepublishOnly":"npm run verify:release","verify:release":"npm run build:release && npm run test:all","test:chains:fork":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm-fork.js --timeout 180000","test:e2e:testnet":"ZEN_NET=testnet node test/e2e/integration.js","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.14.1","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","ethers":"^6.16.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.26_1779100942507_0.76516347319186","host":"s3://npm-registry-packages-npm-production"}},"1.0.27":{"name":"@akaoio/zen","version":"1.0.27","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.27","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.js"},"tsd":{"directory":"types"},"dist":{"shasum":"2fe91e9179b024f330eb36ec60fc11ba8846fb77","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.27.tgz","fileCount":333,"integrity":"sha512-mVdrgOyeXVz148wndRefN4E4J8f4cjC/QmugA7MZEn6JXCPjpvrizi61hB3r3P26e+Md5kV6asgUTI6NHxqoFw==","signatures":[{"sig":"MEUCIQDkk1mLuK/EKqFPDky3QVE4e7NSrRCL5RaAIHaBqZdVIAIgPW6ccMrVuhlsaXVkpjHmNFQ0bIXHy1hMcFJskwkN7KQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12231313},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"47399c2af228b195d19b9a0ff4d1feb9d6f13f74","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run build:zen && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run build:release","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node script/server.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","mcp:dev":"node lib/mcp.js","test:ci":"npm test && npm run test:browser","test:all":"node test/all.js","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:e2e":"node test/e2e/integration.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","test:pen":"npm run build:zen && npm run test:pen:unit","test:zen":"npm run build:zen && npm run test:zen:unit","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","build:pen":"node lib/builder/pen.js","build:zen":"npm run build:pen && npm run build:crypto && node lib/builder/zen.js && npm run minify:zen","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","minify:zen":"terser zen.js --module -o zen.min.js --compress --mangle","start:prof":"node --prof script/server.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","mcp:testnet":"ZEN_NET=testnet node lib/mcp.js","test:chains":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm.js --timeout 60000","test:repeat":"node script/retest.js 20","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","build:chains":"node lib/builder/chains.js","build:crypto":"node lib/builder/crypto.js","test:browser":"playwright test","test:release":"npm run test","build:release":"npm run build:zen && npm run minify","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","test:pen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","test:zen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","prepublishOnly":"npm run verify:release","verify:release":"npm run build:release && npm run test:all","test:chains:fork":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm-fork.js --timeout 180000","test:e2e:testnet":"ZEN_NET=testnet node test/e2e/integration.js","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"25.8.2","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","ethers":"^6.16.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.27_1779190065931_0.5566791912142512","host":"s3://npm-registry-packages-npm-production"}},"1.0.28":{"name":"@akaoio/zen","version":"1.0.28","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.28","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.js"},"tsd":{"directory":"types"},"dist":{"shasum":"33fc385661977b6ac5101a304644d19ef92ebbf9","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.28.tgz","fileCount":333,"integrity":"sha512-YQGuxJqmfEY3icVzJvOAqFbMyM722AH+/zTDuMvFFHx8ueiPM7xqW4hTpG1phTd9Yc9dqbNhxqQmjSQR7BZujw==","signatures":[{"sig":"MEQCIEuCMfF/BFtRe7qxC0DlUoBXDsbeRqRPxPpb2KlEwjpiAiAPnSlJfPoz7RStQ8hsFkiWvLkReCYkWJiDs9rCOxVyfQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12285975},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"5c4465d858d74f311cce2aae9ae6a9dab1deab42","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run build:zen && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run build:release","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node script/server.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","mcp:dev":"node lib/mcp.js","test:ci":"npm test && npm run test:browser","test:all":"node test/all.js","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:e2e":"node test/e2e/integration.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","test:pen":"npm run build:zen && npm run test:pen:unit","test:zen":"npm run build:zen && npm run test:zen:unit","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","build:pen":"node lib/builder/pen.js","build:zen":"npm run build:pen && npm run build:crypto && node lib/builder/zen.js && npm run minify:zen","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","minify:zen":"terser zen.js --module -o zen.min.js --compress --mangle","start:prof":"node --prof script/server.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","mcp:testnet":"ZEN_NET=testnet node lib/mcp.js","test:chains":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm.js --timeout 60000","test:repeat":"node script/retest.js 20","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","build:chains":"node lib/builder/chains.js","build:crypto":"node lib/builder/crypto.js","test:browser":"playwright test","test:release":"npm run test","build:release":"npm run build:zen && npm run minify","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","test:pen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","test:zen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","prepublishOnly":"npm run verify:release","verify:release":"npm run build:release && npm run test:all","test:chains:fork":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm-fork.js --timeout 180000","test:e2e:testnet":"ZEN_NET=testnet node test/e2e/integration.js","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","ethers":"^6.16.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.28_1779208904790_0.7475450145472873","host":"s3://npm-registry-packages-npm-production"}},"1.0.29":{"name":"@akaoio/zen","version":"1.0.29","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.29","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.js"},"tsd":{"directory":"types"},"dist":{"shasum":"2760c0050884c5754fb5c4e72e922a8f24ac84da","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.29.tgz","fileCount":333,"integrity":"sha512-u1RmHYzBiEcZgDwSG2X8ZU0DJnn/bn8EknCMQBynZ186z7nzAPCWhozouDX+CbM8dUuYBRowS3+hCb2rBFbAJg==","signatures":[{"sig":"MEYCIQC0yddvHHIECKBqFEe2LqtqhvKi+GOXVfps23/wJk/gygIhAMEcjqAzH0GDnkAV7QpHJQU9Weoe1H2nNvGfWFLzVSTw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12286776},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"9f55ef5a9b9535fd21512634b4dd608c33eb9a3f","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run build:zen && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run build:release","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node script/server.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","mcp:dev":"node lib/mcp.js","test:ci":"npm test && npm run test:browser","test:all":"node test/all.js","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:e2e":"node test/e2e/integration.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","test:pen":"npm run build:zen && npm run test:pen:unit","test:zen":"npm run build:zen && npm run test:zen:unit","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","build:pen":"node lib/builder/pen.js","build:zen":"npm run build:pen && npm run build:crypto && node lib/builder/zen.js && npm run minify:zen","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","minify:zen":"terser zen.js --module -o zen.min.js --compress --mangle","start:prof":"node --prof script/server.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","mcp:testnet":"ZEN_NET=testnet node lib/mcp.js","test:chains":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm.js --timeout 60000","test:repeat":"node script/retest.js 20","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","build:chains":"node lib/builder/chains.js","build:crypto":"node lib/builder/crypto.js","test:browser":"playwright test","test:release":"npm run test","build:release":"npm run build:zen && npm run minify","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","test:pen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","test:zen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","prepublishOnly":"npm run verify:release","verify:release":"npm run build:release && npm run test:all","test:chains:fork":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm-fork.js --timeout 180000","test:e2e:testnet":"ZEN_NET=testnet node test/e2e/integration.js","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","ethers":"^6.16.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.29_1779217209111_0.5178836867332204","host":"s3://npm-registry-packages-npm-production"}},"1.0.30":{"name":"@akaoio/zen","version":"1.0.30","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.30","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.js"},"tsd":{"directory":"types"},"dist":{"shasum":"89f04f3af2491b21f635c044269730edba87f1fe","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.30.tgz","fileCount":333,"integrity":"sha512-oKR4GUGJ7V7lkednnMctD/Sg7/LyxTmviUORRgdqL5m0bMiGBiIAf1Pgtarq8YFh9gXxeR/VGzKPAjORU7+2FA==","signatures":[{"sig":"MEYCIQDuK5ghcfPgRSOPgdJCQIhQFrULMCgIfz7SRrM+CKUGWQIhAP+IXoNeBfStlD+pJ1YDUNwo8e0ZrYdYt8DnUypdtDEx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12286776},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"fe61a193587c7661f5a03fdd00d6f541fc3582b0","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run build:zen && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run build:release","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node script/server.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","mcp:dev":"node lib/mcp.js","test:ci":"npm test && npm run test:browser","test:all":"node test/all.js","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:e2e":"node test/e2e/integration.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","test:pen":"npm run build:zen && npm run test:pen:unit","test:zen":"npm run build:zen && npm run test:zen:unit","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","build:pen":"node lib/builder/pen.js","build:zen":"npm run build:pen && npm run build:crypto && node lib/builder/zen.js && npm run minify:zen","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","minify:zen":"terser zen.js --module -o zen.min.js --compress --mangle","start:prof":"node --prof script/server.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","mcp:testnet":"ZEN_NET=testnet node lib/mcp.js","test:chains":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm.js --timeout 60000","test:repeat":"node script/retest.js 20","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","build:chains":"node lib/builder/chains.js","build:crypto":"node lib/builder/crypto.js","test:browser":"playwright test","test:release":"npm run test","build:release":"npm run build:zen && npm run minify","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","test:pen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","test:zen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","prepublishOnly":"npm run verify:release","verify:release":"npm run build:release && npm run test:all","test:chains:fork":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm-fork.js --timeout 180000","test:e2e:testnet":"ZEN_NET=testnet node test/e2e/integration.js","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","ethers":"^6.16.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.30_1779242580936_0.7908138055923","host":"s3://npm-registry-packages-npm-production"}},"1.0.31":{"name":"@akaoio/zen","version":"1.0.31","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.31","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.js"},"tsd":{"directory":"types"},"dist":{"shasum":"010d0e8d511301d160e130cecae2618fc46bbd85","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.31.tgz","fileCount":333,"integrity":"sha512-F6wqGMoZ2Pb3UkYzOnwyp9nQcZC12F+guRvhxq951HYxdCn2qKpiGN6lY2c7Yg8Rq26O2Fu8jaiAkMfpThjxLQ==","signatures":[{"sig":"MEYCIQCPmyfTMjHnMm4m/A40ZU0zHPEA+zv87uBM8BYyvaTMTAIhAMcgC8LllWq6vG6GwpGRhZIc72vGCwa+Hup5V9/0O6Ww","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12246504},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"f10c1779380f8b83aad539ded3638a4057af01d7","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run build:zen && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run build:release","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node script/server.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","mcp:dev":"node lib/mcp.js","test:ci":"npm test && npm run test:browser","test:all":"node test/all.js","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:e2e":"node test/e2e/integration.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","test:pen":"npm run build:zen && npm run test:pen:unit","test:zen":"npm run build:zen && npm run test:zen:unit","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","build:pen":"node lib/builder/pen.js","build:zen":"npm run build:pen && npm run build:crypto && node lib/builder/zen.js && npm run minify:zen","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","minify:zen":"terser zen.js --module -o zen.min.js --compress --mangle","start:prof":"node --prof script/server.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","mcp:testnet":"ZEN_NET=testnet node lib/mcp.js","test:chains":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm.js --timeout 60000","test:repeat":"node script/retest.js 20","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","build:chains":"node lib/builder/chains.js","build:crypto":"node lib/builder/crypto.js","test:browser":"playwright test","test:release":"npm run test","build:release":"npm run build:zen && npm run minify","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","test:pen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","test:zen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","prepublishOnly":"npm run verify:release","verify:release":"npm run build:release && npm run test:all","test:chains:fork":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm-fork.js --timeout 180000","test:e2e:testnet":"ZEN_NET=testnet node test/e2e/integration.js","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.14.1","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","ethers":"^6.16.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.31_1779354928025_0.8981470483637992","host":"s3://npm-registry-packages-npm-production"}},"1.0.32":{"name":"@akaoio/zen","version":"1.0.32","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.32","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.js"},"tsd":{"directory":"types"},"dist":{"shasum":"8fa0c78f4dcbe128aff2a9175d54fa57a0d14146","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.32.tgz","fileCount":334,"integrity":"sha512-X2vksoz5aujYIqkCa3VFWqKMLRtvnQxo8q3h5CH7gt6w4Bjasc689gW7tO7Na3wZnGk7bJHr/Xis5eLwVTxDRw==","signatures":[{"sig":"MEQCIEeXvJDmMdC2mpJoO4NMsLWsIuW2XuHcq2BzNf6TEKKYAiBOKj7rPr7XDTg6smxgGYtjSq6T7G31GScTxkIRQy91Nw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12265098},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"f34971a9311786625ea7189bd19e280921586d47","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run build:zen && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run build:release","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node script/server.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","mcp:dev":"node lib/mcp.js","test:ci":"npm test && npm run test:browser","test:all":"node test/all.js","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:e2e":"node test/e2e/integration.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","test:pen":"npm run build:zen && npm run test:pen:unit","test:zen":"npm run build:zen && npm run test:zen:unit","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","build:pen":"node lib/builder/pen.js","build:zen":"npm run build:pen && npm run build:crypto && node lib/builder/zen.js && npm run minify:zen","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","minify:zen":"terser zen.js --module -o zen.min.js --compress --mangle","start:prof":"node --prof script/server.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","mcp:testnet":"ZEN_NET=testnet node lib/mcp.js","test:chains":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm.js --timeout 60000","test:repeat":"node script/retest.js 20","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","build:chains":"node lib/builder/chains.js","build:crypto":"node lib/builder/crypto.js","test:browser":"playwright test","test:release":"npm run test","build:release":"npm run build:zen && npm run minify","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","test:pen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","test:zen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","prepublishOnly":"npm run verify:release","verify:release":"npm run build:release && npm run test:all","test:chains:fork":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm-fork.js --timeout 180000","test:e2e:testnet":"ZEN_NET=testnet node test/e2e/integration.js","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.14.1","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","ethers":"^6.16.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.32_1779813565201_0.6792816923580203","host":"s3://npm-registry-packages-npm-production"}},"1.0.33":{"name":"@akaoio/zen","version":"1.0.33","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.33","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.js"},"tsd":{"directory":"types"},"dist":{"shasum":"8fbd75e1519c63b0bcc3137dd8d5203c1a054a5a","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.33.tgz","fileCount":331,"integrity":"sha512-rlNGaucdPl56+GftHtJYMant0IjiedujlHRN+8zHzRdI2sfRH+DRHajHeZvHJM3agu6R1dXhqoWVomuvxtaeXQ==","signatures":[{"sig":"MEUCIBHE/3X2EZIgHFNA6tx/uBb0uyPoMzD+XW5GbpV20St+AiEA/VzRV2TWWKFiY0u/wzam41TjjNihCqPbgmBI9Xoggr8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12310240},"main":"index.js","type":"module","engines":{"node":">=0.8.4"},"gitHead":"35aef24f4007c7bfe81bcc498f00d70afbb1ecad","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run build:zen && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run build:release","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node script/server.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","mcp:dev":"node lib/mcp.js","test:ci":"npm test && npm run test:browser","test:all":"node test/all.js","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:e2e":"node test/e2e/integration.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","test:pen":"npm run build:zen && npm run test:pen:unit","test:zen":"npm run build:zen && npm run test:zen:unit","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","build:pen":"node lib/builder/pen.js","build:zen":"npm run build:pen && npm run build:crypto && node lib/builder/zen.js && npm run minify:zen","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","minify:zen":"terser zen.js --module -o zen.min.js --compress --mangle","start:prof":"node --prof script/server.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","mcp:testnet":"ZEN_NET=testnet node lib/mcp.js","test:chains":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm.js --timeout 60000","test:repeat":"node script/retest.js 20","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","build:chains":"node lib/builder/chains.js","build:crypto":"node lib/builder/crypto.js","test:browser":"playwright test","test:release":"npm run test","build:release":"npm run build:zen && npm run minify","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","test:pen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","test:zen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","prepublishOnly":"npm run verify:release","verify:release":"npm run build:release && npm run test:all","test:chains:fork":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm-fork.js --timeout 180000","test:e2e:testnet":"ZEN_NET=testnet node test/e2e/integration.js","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","ethers":"^6.16.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.33_1780213408391_0.9688694030659046","host":"s3://npm-registry-packages-npm-production"}},"1.0.34":{"name":"@akaoio/zen","version":"1.0.34","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","_id":"@akaoio/zen@1.0.34","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"homepage":"https://github.com/akaoio/zen#readme","bugs":{"url":"https://github.com/akaoio/zen/issues"},"bin":{"mcp":"lib/mcp.js"},"tsd":{"directory":"types"},"dist":{"shasum":"2640152cbdcb7d0e5e799495e095cee49569016f","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.34.tgz","fileCount":331,"integrity":"sha512-Yzi88UygwxweYAg+Ho6tsTwm4vCT7IfcwDM9T8RiFly/5pst9v29FvFvWohLLdE8ykc7D7sIwCZAzkfdfUiMZA==","signatures":[{"sig":"MEYCIQD+0O0JmxKHXIaKe/FiwOrOKpYDkuxNUyvqgxKWzFZtrQIhAPxfTmVlgsQwJumIUNla/X/EkVqADd6ora53kkZdspMZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12310272},"main":"index.min.js","type":"module","browser":"zen.min.js","engines":{"node":">=0.8.4"},"gitHead":"830d9053378c8acaf2355544cfbde7bacc3252b3","scripts":{"e2e":"mocha e2e/distributed.js","test":"npm run build:zen && npm run test:all","bench":"node --experimental-vm-modules test/bench/run.js","build":"npm run build:release","clean":"node clean.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","start":"node script/server.js","docker":"hooks/build","format":"prettier --write .","minify":"node lib/minify.js","mcp:dev":"node lib/mcp.js","test:ci":"npm test && npm run test:browser","test:all":"node test/all.js","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:e2e":"node test/e2e/integration.js","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","test:pen":"npm run build:zen && npm run test:pen:unit","test:zen":"npm run build:zen && npm run test:zen:unit","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","build:pen":"node lib/builder/pen.js","build:zen":"npm run build:pen && npm run build:crypto && node lib/builder/zen.js && npm run minify:zen","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","minify:zen":"terser zen.js --module -o zen.min.js --compress --mangle","start:prof":"node --prof script/server.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","mcp:testnet":"ZEN_NET=testnet node lib/mcp.js","test:chains":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm.js --timeout 60000","test:repeat":"node script/retest.js 20","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","build:chains":"node lib/builder/chains.js","build:crypto":"node lib/builder/crypto.js","test:browser":"playwright test","test:release":"npm run test","build:release":"npm run build:zen && npm run minify","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","test:pen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","test:zen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","prepublishOnly":"npm run verify:release","verify:release":"npm run build:release && npm run test:all","test:chains:fork":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm-fork.js --timeout 180000","test:e2e:testnet":"ZEN_NET=testnet node test/e2e/integration.js","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps"},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"repository":{"url":"git+https://github.com/akaoio/zen.git","type":"git"},"_npmVersion":"11.13.0","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"ip":"^1.1.5","mocha":"^6.2.0","ethers":"^6.16.0","terser":"^5.46.2","ganache":"^7.9.2","prettier":"^3.8.3","cross-env":"^10.1.0","@playwright/test":"^1.59.1"},"_npmOperationalInternal":{"tmp":"tmp/zen_1.0.34_1780228651627_0.4444171211258596","host":"s3://npm-registry-packages-npm-production"}},"1.0.35":{"name":"@akaoio/zen","type":"module","version":"1.0.35","description":"A realtime, decentralized, offline-first, graph data synchronization engine.","main":"index.min.js","browser":"zen.min.js","bin":{"mcp":"lib/mcp.js"},"scripts":{"start":"node script/server.js","start:prof":"node --prof script/server.js","debug":"node --prof-process --preprocess -j isolate*.log > v8data.json && rm isolate*.log && echo 'drag & drop ./v8data.json into https://mapbox.github.io/flamebearer/'","https":"HTTPS_KEY=test/https/server.key HTTPS_CERT=test/https/server.crt npm start","build":"npm run build:release","prepublishOnly":"npm run verify:release","clean":"node clean.js","test":"npm run build:zen && npm run test:all","test:repeat":"node script/retest.js 20","test:browser":"playwright test","test:browser:setup":"playwright install chromium","test:browser:setup:deps":"playwright install chromium --with-deps","test:e2e":"node test/e2e/integration.js","test:e2e:testnet":"ZEN_NET=testnet node test/e2e/integration.js","mcp:dev":"node lib/mcp.js","mcp:testnet":"ZEN_NET=testnet node lib/mcp.js","test:ci":"npm test && npm run test:browser","test:all":"node test/all.js","test:discover":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/discover.js --timeout 15000","test:mcp":"cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mcp.js test/mcp/protocol.js test/mcp/relay.js --timeout 30000","test:core":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_SILENCE_TEST_WARNINGS=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/abc.js test/rad/rad.js test/radix.js test/zen.js","test:mesh":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/mesh/dam.js --timeout 10000","test:dht":"cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/dht/kbucket.js --timeout 10000","test:zen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 ZEN_TEST=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/zen/instance.js test/zen/bootstrap.js test/zen/secp256k1.js test/zen/crypto.js test/zen/multicurve.js test/zen/certify.js test/zen/recover.js test/zen/push.js test/zen/status.js test/mesh/dam.js","test:zen":"npm run build:zen && npm run test:zen:unit","e2e":"mocha e2e/distributed.js","docker":"hooks/build","minify":"node lib/minify.js","minify:zen":"terser zen.js --module -o zen.min.js --compress --mangle","build:zen":"npm run build:pen && npm run build:crypto && node lib/builder/zen.js && npm run minify:zen","build:chains":"node lib/builder/chains.js","build:release":"npm run build:zen && npm run minify","build:pen":"node lib/builder/pen.js","build:crypto":"node lib/builder/crypto.js","test:chains":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm.js --timeout 60000","test:chains:fork":"cross-env GUN_TEST_TMP=1 node --import ./test/loaders/register-zen-minified.mjs ./node_modules/mocha/bin/_mocha --exit test/chains/evm-fork.js --timeout 180000","bench":"node --experimental-vm-modules test/bench/run.js","bench:hash":"node --experimental-vm-modules test/bench/01_hash.js","bench:json":"node --experimental-vm-modules test/bench/02_json.js","bench:dup":"node --experimental-vm-modules test/bench/03_dup.js","bench:radix":"node --experimental-vm-modules test/bench/04_radix.js","bench:ham":"node --experimental-vm-modules test/bench/05_ham.js","bench:sign":"node --experimental-vm-modules test/bench/06_crypto_sign.js","bench:base62":"node --experimental-vm-modules test/bench/07_base62.js","test:pen:unit":"npm run clean && cross-env GUN_TEST_TMP=1 mocha test/pen.js --timeout 10000","test:pen":"npm run build:zen && npm run test:pen:unit","test:release":"npm run test","verify:release":"npm run build:release && npm run test:all","format":"prettier --write ."},"repository":{"type":"git","url":"git+https://github.com/akaoio/zen.git"},"keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","bugs":{"url":"https://github.com/akaoio/zen/issues"},"homepage":"https://github.com/akaoio/zen#readme","engines":{"node":">=0.8.4"},"tsd":{"directory":"types"},"devDependencies":{"@playwright/test":"^1.59.1","cross-env":"^10.1.0","ethers":"^6.16.0","ganache":"^7.9.2","ip":"^1.1.5","mocha":"^6.2.0","prettier":"^3.8.3","terser":"^5.46.2"},"gitHead":"b8744d6c3a1a25767d745c1b7b9804f1f8583a07","_id":"@akaoio/zen@1.0.35","_nodeVersion":"24.14.0","_npmVersion":"11.13.0","dist":{"integrity":"sha512-94kfK741cnhMeV6v9cSi9uMRlSWGNOtUEU9aOHL7Nqn2EU13vcMwKtzH0fZYgU0O/B/Dq1AWiZIQ0DJY4uQRcA==","shasum":"ce1972157085fe37b1b9602d3fb792e6a38c7ce5","tarball":"https://registry.npmjs.org/@akaoio/zen/-/zen-1.0.35.tgz","fileCount":329,"unpackedSize":12300675,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAJtPROrwSjNoI7XW8xHejxl1wXvmNSDpWHfuGYneG1rAiEAreX+EgE/81C/X3NvyGbjfygXEEFRtjwDPCXR2xphfZA="}]},"_npmUser":{"name":"akaoio","email":"dev@akao.io"},"directories":{},"maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/zen_1.0.35_1780233129493_0.7676919214452347"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-23T04:45:37.537Z","modified":"2026-05-31T13:12:09.828Z","0.2020.1241":"2026-04-23T04:45:37.855Z","1.0.0":"2026-04-24T04:15:49.092Z","1.0.3":"2026-04-25T05:20:22.636Z","1.0.4":"2026-04-25T08:00:22.134Z","1.0.5":"2026-04-27T17:17:25.673Z","1.0.6":"2026-04-28T07:50:44.735Z","1.0.7":"2026-04-29T14:42:14.971Z","1.0.8":"2026-04-29T17:50:07.478Z","1.0.9":"2026-04-29T18:05:57.155Z","1.0.10":"2026-05-03T03:15:28.472Z","1.0.11":"2026-05-03T11:19:38.738Z","1.0.12":"2026-05-04T15:42:01.799Z","1.0.13":"2026-05-04T15:51:49.382Z","1.0.14":"2026-05-04T16:04:58.068Z","1.0.15":"2026-05-04T18:38:27.280Z","1.0.16":"2026-05-05T07:50:49.171Z","1.0.17":"2026-05-05T11:09:40.781Z","1.0.18":"2026-05-05T16:51:29.487Z","1.0.19":"2026-05-05T17:41:59.554Z","1.0.20":"2026-05-06T04:02:15.600Z","1.0.21":"2026-05-06T04:21:41.991Z","1.0.22":"2026-05-11T11:52:16.476Z","1.0.24":"2026-05-14T11:39:46.116Z","1.0.25":"2026-05-15T09:34:39.721Z","1.0.26":"2026-05-18T10:42:22.733Z","1.0.27":"2026-05-19T11:27:46.128Z","1.0.28":"2026-05-19T16:41:45.026Z","1.0.29":"2026-05-19T19:00:09.336Z","1.0.30":"2026-05-20T02:03:01.274Z","1.0.31":"2026-05-21T09:15:28.216Z","1.0.32":"2026-05-26T16:39:25.378Z","1.0.33":"2026-05-31T07:43:28.601Z","1.0.34":"2026-05-31T11:57:31.821Z","1.0.35":"2026-05-31T13:12:09.710Z"},"bugs":{"url":"https://github.com/akaoio/zen/issues"},"author":{"name":"Mark Nadal"},"license":"(Zlib OR MIT OR Apache-2.0)","homepage":"https://github.com/akaoio/zen#readme","keywords":["zen","graph","document","key","value","relational","datastore","database","engine","realtime","decentralized","peer-to-peer","distributed","P2P","OSS","embedded","localstorage","S3"],"repository":{"type":"git","url":"git+https://github.com/akaoio/zen.git"},"description":"A realtime, decentralized, offline-first, graph data synchronization engine.","maintainers":[{"name":"akaoio","email":"dev@akao.io"}],"readme":"﻿# ZEN — Zen Entropy Network\r\n\r\n**A realtime, decentralized, offline-first graph database with a built-in cryptographic runtime and policy VM.**\r\n\r\n```js\r\nimport ZEN from \"@akaoio/zen\";\r\n\r\nconst zen = new ZEN({ file: \"data\" });\r\nzen.get(\"user\").put({ name: \"Alice\" });\r\nzen.get(\"user\").once(console.log);  // { name: \"Alice\" }\r\n```\r\n\r\n---\r\n\r\n## The Book\r\n\r\nThis repository is documented as a structured book. Read it in order or jump to the chapter you need.\r\n\r\n| Chapter | Topic |\r\n|---------|-------|\r\n| [Ch 1 — Getting Started](docs/ch01-getting-started.md) | Install, Hello ZEN!, first graph, first crypto call |\r\n| [Ch 2 — Graph Model](docs/ch02-graph-model.md) | Nodes, souls, HAM/CRDT, state timestamps, `get`, `put`, `on`, `map` |\r\n| [Ch 3 — Cryptography](docs/ch03-crypto.md) | `pair`, `sign`, `verify`, `encrypt`, `decrypt`, `secret`, `hash`, `certify` |\r\n| [Ch 4 — Authenticated Data](docs/ch04-authenticated-data.md) | Owned namespaces, signing writes, certificates, security pipeline |\r\n| [Ch 5 — Storage Adapters](docs/ch05-storage.md) | Radisk, filesystem, IndexedDB, OPFS, S3, writing your own; ENOSPC/OOM resilience |\r\n| [Ch 6 — Networking](docs/ch06-networking.md) | Mesh, peers, WebSocket, `zen.push()` ephemeral relay, DAM ping/RTT, AXE clustering |\r\n| [Ch 7 — PEN Policy VM](docs/ch07-pen.md) | WASM bytecode engine, opcodes, `ZEN.pen()`, bridge/runtime policy enforcement |\r\n| [Ch 8 — Contributing](docs/ch08-contributing.md) | Build system, test suite, adding chain methods, adding adapters |\r\n| [Ch 9 — MCP (AI Integration)](docs/ch09-mcp.md) | IDE peer, stdio server, tools, Cursor/VSCode config |\r\n| [Ch 10 — EVM Chain Adapter](docs/ch10-chains-evm.md) | `lib/chains/evm.js` — full ethers.js replacement using ZEN primitives, DeFi utilities, EIP-712 |\r\n\r\n---\r\n\r\n## What ZEN does differently\r\n\r\n- **Offline-first CRDT** — every write is a HAM (Hypothetical Amnesia Machine) state vector; peers converge without coordination\r\n- **No central server** — peers are symmetric; any node can relay\r\n- **Self-discovery** — peers find their own domain/IP via config → STUN → `ip route`; scan sibling peers by numeric index pattern (`zen1.akao.io` → probes `peer0`, `peer2`…)\r\n- **PEX** — peers share known URLs on connect; no public graph required\r\n- **Graph, not table** — arbitrary node relationships, circular references native\r\n- **Crypto built in** — secp256k1 keys, AES-GCM encryption, ECDH shared secrets, deterministic certifications\r\n- **Policy VM** — PEN is a Zig-compiled WASM bytecode engine for write-access policies\r\n- **Multi-curve** — secp256k1 (default), P-256/secp256r1, EVM (0x), Bitcoin P2PKH\r\n- **Zero dependencies in browser** — bundled `zen.js` has no npm runtime dependencies\r\n\r\n---\r\n\r\n## Install\r\n\r\n**As a library** (Node.js / browser bundle):\r\n\r\n```bash\r\nnpm install @akaoio/zen\r\n```\r\n\r\nNode.js ≥ 18 is required. The bundled `zen.js` runs in any modern browser with no build step.\r\n\r\n---\r\n\r\n## Deploy a Relay Peer\r\n\r\nOne command installs Node.js 24, clones ZEN, creates a systemd service, and adds the `zen` CLI:\r\n\r\n```bash\r\ncurl -fsSL https://raw.githubusercontent.com/akaoio/zen/main/script/install.sh | bash\r\n```\r\n\r\nAfter install:\r\n\r\n```bash\r\nzen status      # service state, version, XDG paths, SSL expiry\r\nzen start       # start the relay service\r\nzen stop        # stop the relay service\r\nzen restart     # restart the relay service\r\nzen logs        # follow journalctl live logs\r\nzen update      # pull latest & restart\r\nzen uninstall   # remove everything\r\n```\r\n\r\nOptions (pass after `bash -s --`):\r\n\r\n```bash\r\ncurl -fsSL https://raw.githubusercontent.com/akaoio/zen/main/script/install.sh | bash -s -- \\\r\n  --port 443 \\\r\n  --domain zen1.akao.io \\\r\n  --peers \"https://zen0.akao.io/zen\"\r\n```\r\n\r\n| Option | Default | Description |\r\n|--------|---------|-------------|\r\n| `--port` | `8420` | Listening port |\r\n| `--domain` | auto-detected | Your relay domain (saved to `~/.config/zen/domain`) |\r\n| `--peers` | none | Comma-separated seed peer URLs |\r\n| `--https-key` | auto from `~/.config/zen/key.pem` | Path to TLS private key |\r\n| `--https-cert` | auto from `~/.config/zen/cert.pem` | Path to TLS certificate |\r\n| `--skip-deps` | false | Skip Node.js installation (use when Node is installed via nvm) |\r\n| `-y` / `--yes` | false | Non-interactive mode — skip all prompts |\r\n\r\nThe domain is used for self-identification and peer scanning. If omitted, ZEN detects it at runtime via STUN or the incoming request `Host` header.\r\n\r\n### Automatic peer discovery\r\n\r\nOnce your relay is running it finds other peers automatically — no seed peers required:\r\n\r\n1. **Smart scan** — detects numeric index in your domain (`zen1.akao.io`) and probes `peer0`, `peer2`… up to `peer100`; stops after 10 found\r\n2. **PEX** — each new connection immediately shares its peer list; new discoveries are forwarded to all existing connections\r\n3. **Backoff** — empty scan cycles back off from 10 m → 20 m → 40 m → capped at 2 h; resets immediately on any discovery\r\n4. **Upstream cap** — at most 10 outbound connections from scan; inbound excess redirected by AXE MOB\r\n5. **RTT-aware pruning** — when MOB must redirect a peer, the highest-latency inbound is chosen first; auto-ping keeps RTT measurements fresh every 30 s\r\n\r\n### POSIX / XDG Base Directory layout\r\n\r\nZEN follows the [XDG Base Directory Specification](https://specifications.freedesktop.org/basedir-spec/latest/) — no files land in `~/` or the project directory.\r\n\r\n| Purpose | Default path | Override |\r\n|---------|-------------|---------|\r\n| SSL key & cert, pass file | `~/.config/zen/` | `$XDG_CONFIG_HOME/zen/` |\r\n| Graph data (radata) | `~/.local/share/zen/radata/` | `$XDG_DATA_HOME/zen/` |\r\n| Stats / state | `~/.local/state/zen/` | `$XDG_STATE_HOME/zen/` |\r\n| `zen` CLI binary | `/usr/local/bin/zen` or `~/.local/bin/zen` | — |\r\n\r\n### SSL setup (Let's Encrypt via acme.sh)\r\n\r\nRun `ssl.sh` once before `install.sh`. The cert is saved to `~/.config/zen/` and picked up automatically on install:\r\n\r\n```bash\r\n# Step 1 — get a certificate (once per machine)\r\nsh script/ssl.sh --domain relay.example.com --email you@example.com\r\n\r\n# Step 2 — install (cert is auto-detected from ~/.config/zen/)\r\nsh script/install.sh --domain relay.example.com --yes\r\n```\r\n\r\nFor automated / non-interactive deploys (e.g. SSH without a TTY):\r\n\r\n```bash\r\necho \"sudo-password\" | sudo -SE sh script/install.sh \\\r\n  --domain relay.example.com --yes --skip-deps\r\n```\r\n\r\n---\r\n\r\n## Quick examples\r\n\r\n### Graph\r\n\r\n```js\r\nimport ZEN from \"@akaoio/zen\";\r\n\r\nconst zen = new ZEN({ file: \"data\" });  // persists to disk\r\n\r\n// Write\r\nzen.get(\"profile\").put({ name: \"Alice\", age: 30 });\r\n\r\n// Read once\r\nzen.get(\"profile\").get(\"name\").once(function(data) {\r\n  console.log(data);  // \"Alice\"\r\n});\r\n\r\n// Subscribe to changes\r\nzen.get(\"profile\").get(\"age\").on(function(data) {\r\n  console.log(\"age changed:\", data);\r\n});\r\n```\r\n\r\n### Key pairs and crypto\r\n\r\n```js\r\nconst pair = await ZEN.pair();                       // secp256k1\r\n\r\nconst signed  = await ZEN.sign(\"hello\", pair);\r\n// signed = \"<86 base62 chars>0:hello\"\r\n// signed[86] → recovery bit (0 or 1)\r\n// signed[87] → ':'\r\nconst ok      = await ZEN.verify(signed, pair.pub);  // \"hello\"\r\n\r\nconst enc = await ZEN.encrypt(\"secret\", pair.pub);\r\n// enc = \"<ct_base62>.<iv_base62_21>.<salt_base62_13>\"\r\nconst dec = await ZEN.decrypt(enc, pair.priv);       // \"secret\"\r\n\r\nconst bob    = await ZEN.pair();\r\nconst shared = await ZEN.secret(bob.pub, pair);      // ECDH\r\n```\r\n\r\nA pair object has four fields:\r\n\r\n| Field | Length | Description |\r\n|-------|--------|-------------|\r\n| `pub`     | 45 chars | Compressed EC public key — 44-char base62 x-coord + `\"0\"`/`\"1\"` parity |\r\n| `priv`    | 44 chars | Private key scalar |\r\n| `address` | 42 chars | Ethereum-style keccak160 address (hex, checksummed) |\r\n| `curve`   | string   | `\"secp256k1\"` by default |\r\n\r\nThe 45-char compressed format (`x || parity`) saves space versus the legacy 88-char uncompressed form. Legacy keys are still accepted for backward compatibility.\r\n\r\n### Multi-curve\r\n\r\n```js\r\nconst secp = await ZEN.pair();                        // secp256k1 (default)\r\nconst p256 = await ZEN.pair(null, { curve: \"p256\" }); // P-256\r\nconst evm  = await ZEN.pair(null, { format: \"evm\" }); // 0x EVM address\r\nconst btc  = await ZEN.pair(null, { format: \"btc\" }); // P2PKH mainnet\r\n```\r\n\r\n### Collections\r\n\r\n```js\r\nconst list = zen.get(\"todos\");\r\n\r\n// Add items\r\nlist.set({ text: \"buy milk\" });\r\nlist.set({ text: \"learn ZEN\" });\r\n\r\n// Iterate over all items in realtime\r\nlist.map().on(function(item, id) {\r\n  console.log(id, item);\r\n});\r\n```\r\n\r\n### Seed-based deterministic keys\r\n\r\n```js\r\nconst pair1 = await ZEN.pair(null, { seed: \"my-deterministic-seed\" });\r\nconst pair2 = await ZEN.pair(null, { seed: \"my-deterministic-seed\" });\r\n// pair1.pub === pair2.pub — always\r\n```\r\n\r\n### Additive key derivation\r\n\r\n```js\r\n// Bob derives a child key pair from his private key + shared seed\r\n// ZEN.pair() automatically performs additive derivation when given both priv and seed\r\nconst child = await ZEN.pair(null, { priv: pair.priv, seed: \"shared-namespace\" });\r\n\r\n// Alice derives the same child public key from Bob's public key + same seed\r\n// ZEN.pair() performs public-only derivation when given pub and seed\r\nconst childPub = await ZEN.pair(null, { pub: pair.pub, seed: \"shared-namespace\" });\r\n// child.pub === childPub.pub — without either party revealing private keys\r\n```\r\n\r\n---\r\n\r\n## API\r\n\r\n### Graph (instance)\r\n\r\n```js\r\nconst zen = new ZEN(opt);\r\n\r\nzen.get(key)        // navigate to a node\r\nzen.put(data)       // write data\r\nzen.on(cb)          // subscribe to realtime updates\r\nzen.once(cb)        // read once\r\nzen.map()           // iterate a set\r\nzen.set(data)       // add to a set (unordered collection)\r\nzen.back(n)         // navigate up the chain\r\nzen.meta(cb)        // subscribe + receive full signature metadata\r\nzen.push(pub, data) // send an ephemeral P2P message to a peer (not stored)\r\n```\r\n\r\n### `.meta()` — signature metadata\r\n\r\n`zen.get(soul).get(key).meta(cb)` fires the callback on every update and passes a metadata object:\r\n\r\n```js\r\nzen.get(\"~\" + pair.pub).get(\"profile\").meta(function(m) {\r\n  console.log(m.val);    // verified plaintext value\r\n  console.log(m.pub);    // public key of the writer\r\n  console.log(m.sig);    // 86-char base62 ECDSA signature (or null if unsigned)\r\n  console.log(m.state);  // HAM state timestamp (ms)\r\n  console.log(m.soul);   // node soul\r\n});\r\n\r\n// Promise variant\r\nconst m = await zen.get(\"~\" + pair.pub).get(\"profile\").meta();\r\n```\r\n\r\nFor unsigned data `pub`, `sig`, and `v` are `null`. For `~pub` namespaces the soul owner is returned as `pub` when no other signer can be determined. For `!pen` souls the pub key is recovered asynchronously from the embedded signature.\r\n\r\n### Crypto (static + instance mirror)\r\n\r\n```js\r\nZEN.pair(cb, opt)                // generate key pair\r\nZEN.sign(data, pair)             // sign data → compact signed string\r\nZEN.verify(data, pub)            // verify signature\r\nZEN.recover(sig)                 // recover signer pub from signature (no pub needed)\r\nZEN.encrypt(data, pair)          // encrypt\r\nZEN.decrypt(data, pair)          // decrypt\r\nZEN.secret(pub, pair)            // ECDH shared secret\r\nZEN.hash(data, pair, cb, opt)    // hash (SHA-256, HKDF, keccak256, or PBKDF2)\r\nZEN.certify(certs, policy, pair) // create a certificate\r\n```\r\n\r\nAll static methods are also available as instance methods: `zen.pair()`, `zen.sign()`, `zen.recover()`, etc.\r\n\r\n### Recoverable signatures\r\n\r\nEvery `ZEN.sign()` output now includes `v` — a recovery bit (0 or 1). This allows `ZEN.recover()` to reconstruct the signer's public key from the signature alone, without needing the pub key as input:\r\n\r\n```js\r\nconst pair = await ZEN.pair();\r\nconst sig  = await ZEN.sign(\"hello\", pair);\r\n// sig format:\r\n// secp256k1: <86 base62 sig><v>:<message>\r\n// p256:      <86 base62 sig><v>/p256:<message>\r\n\r\nconst pub = await ZEN.recover(sig);\r\nconsole.log(pub === pair.pub);  // true\r\n```\r\n\r\nWorks for both secp256k1 (default) and P-256. Cross-curve recovery (e.g. P-256 sig forced into secp256k1) does not throw — it silently returns a different (wrong) public key. Security depends on the `c` field in the signature being intact.\r\n\r\n### Hash mining (Proof-of-Work)\r\n\r\nPass `opt.pow` to mine: the function loops with base62 nonces until the hash starts with the required prefix.\r\n\r\n```js\r\n// string data — nonce appended as \"data:nonce\"\r\nconst { hash, nonce, proof } = await ZEN.hash(\"mykey\", null, null, {\r\n  name: \"SHA-256\",\r\n  encode: \"hex\",\r\n  pow: { unit: \"0\", difficulty: 2 },   // hash must start with \"00\"\r\n});\r\n\r\n// function data — full control over nonce placement\r\nconst result = await ZEN.hash(\r\n  (nonce) => `prefix:${nonce}:suffix`,\r\n  null, null,\r\n  { name: \"SHA-256\", encode: \"hex\", pow: { unit: \"0\", difficulty: 1 } },\r\n);\r\n// result.proof  — the winning value (what gets written to the graph)\r\n// result.hash   — its SHA-256 hex hash (starts with the required prefix)\r\n// result.nonce  — the base62 nonce that produced the win\r\n```\r\n\r\n**PEN compatibility:** pen reads the nonce from `msg.put[\"^\"]` (register R[7]) and the key from R[0], reconstructs `proof = key + \":\" + nonce`, then SHA-256-hashes it. For string data this is identical to `ZEN.hash(result.proof, null, null, { name: \"SHA-256\", encode: \"hex\" })`. The nonce is **not** embedded in the key string — it travels as a separate wire field (`^`) so keys stay clean.\r\n\r\n### Hash modes\r\n\r\n`opt.name` selects the algorithm. Each mode is optimised for a different use case:\r\n\r\n| `opt.name` | Algorithm | Salt used? | When to use |\r\n|------------|-----------|------------|-------------|\r\n| `\"SHA-256\"` | WebCrypto SHA-256 | **No** | Content-addressing, PoW mining, fast fingerprints |\r\n| `\"HKDF\"` | WebCrypto HKDF | **Yes** | Deriving keys from a high-entropy seed (WebAuthn, keypair) |\r\n| `\"keccak256\"` | WASM Keccak-256 | No | EVM address derivation, Ethereum-compatible hashes |\r\n| _(default)_ | PBKDF2 100k iter | Yes | Password hashing — slow by design to stretch low-entropy secrets |\r\n\r\n```js\r\n// Fast content hash (salt argument ignored by SHA-256 path)\r\nconst h = await ZEN.hash(\"data\", null, null, { name: \"SHA-256\", encode: \"hex\" });\r\n\r\n// Key derivation from a strong seed — HKDF is ~200× faster than PBKDF2\r\n// and correctly uses the second argument as salt\r\nconst walletKey = await ZEN.hash(seed, \"wallet\", null, { name: \"HKDF\" });\r\nconst avatarKey = await ZEN.hash(seed, \"avatar\", null, { name: \"HKDF\" });\r\n\r\n// Default — PBKDF2, correct for passwords\r\nconst stretched = await ZEN.hash(password, salt);\r\n```\r\n\r\n> **Important**: The SHA-256 path ignores the `pair`/salt argument. Two calls with different salts but the same data return the same hash. Use HKDF when salt separation is required.\r\n\r\n---\r\n\r\n## Storage\r\n\r\n```js\r\nimport \"@akaoio/zen/lib/store\";    // RAD / Radisk (default)\r\nimport \"@akaoio/zen/lib/rfs\";      // filesystem (Node.js)\r\nimport \"@akaoio/zen/lib/rindexed\"; // IndexedDB (browser)\r\nimport \"@akaoio/zen/lib/opfs\";     // OPFS (browser)\r\nimport \"@akaoio/zen/lib/rs3\";      // AWS S3\r\n```\r\n\r\n---\r\n\r\n## MCP — AI integration\r\n\r\nZEN ships an MCP (Model Context Protocol) server that turns any IDE into a full ZEN peer. Your editor joins the P2P mesh, contributes to routing, and persists data at `~/.local/share/zen/mcp`.\r\n\r\n**Quick start (Cursor / VSCode + forks):**\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"zen\": {\r\n      \"command\": \"npx\",\r\n      \"args\": [\"-y\", \"-p\", \"@akaoio/zen\", \"mcp\"]\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n- Cursor: `~/.cursor/mcp.json` (or project `.cursor/mcp.json`)\r\n- VSCode Copilot: `~/.vscode/mcp.json` (or project `.vscode/mcp.json`)\r\n\r\nNo ZEN installation needed — `npx` fetches `@akaoio/zen` automatically.\r\n\r\n**Available tools:**\r\n\r\n| Tool | Description |\r\n|------|-------------|\r\n| `graph` | Graph `get` / `put` / `set` / `subscribe` / `unsubscribe` — optional `pairId`, `cert`, `pow` |\r\n| `crypto` | Static crypto: `pair`, `sign`, `verify`, `encrypt`, `decrypt`, `secret`, `hash`, `certify`, `recover`, `pen`, `candle` |\r\n| `identity` | Return the MCP server public identity (`self`) |\r\n| `protocol` | ZACP high-level ops — souls, project meta/roles, channel lifecycle, E2E messaging, DMs |\r\n\r\nThe `graph` tool's `subscribe` op streams real-time updates back as MCP `notifications/message` events (one per key change). Use `unsubscribe` with the same `sub_id` to stop.\r\n\r\nThe `protocol` tool exposes 16 operations:\r\n`inbox_soul`, `chan_soul`, `dm_soul`,\r\n`set_project_meta`, `get_project_meta`, `set_project_role`, `get_project_roles`,\r\n`create_channel`, `invite`, `kick`, `rotate`,\r\n`send_channel`, `read_channel`,\r\n`send_inbox`, `read_inbox`,\r\n`send_dm`, `read_dms`.\r\n\r\nThe server exposes a single built-in signing identity alias: `pairId: \"self\"`.\r\nRaw private keys are rejected by the MCP process.\r\n\r\n### Relay RPC — `ZenMcpClient`\r\n\r\nBeyond stdio, the MCP server doubles as a **DAM relay RPC endpoint** reachable by any ZEN peer over the existing P2P mesh (no new port, no HTTP).\r\n\r\n```js\r\nimport ZEN from \"@akaoio/zen\";\r\nimport ZenMcpClient from \"@akaoio/zen/lib/mcp/client\";\r\n\r\nconst zen = new ZEN({ file: \"data\" });\r\nconst client = await ZenMcpClient.discover(serverPub, zen);\r\n\r\nconst tools = await client.listTools();\r\nconst result = await client.call(\"crypto\", { method: \"pair\" });\r\n```\r\n\r\nTransport is ECDH end-to-end encrypted DAM messages — no credentials leave the mesh.\r\nSee [Ch 9 — MCP §9.8](docs/ch09-mcp.md) for full relay protocol details.\r\n\r\nSee [Ch 9 — MCP](docs/ch09-mcp.md) for full details.\r\n\r\n---\r\n\r\n\r\n\r\nPEN is a bytecode policy engine integrated into ZEN. It compiles Zig source to WASM and runs verifiable access policies over graph writes.\r\n\r\n```js\r\nconst soul = ZEN.pen({ val: { type: \"string\" }, sign: true });\r\n// soul is a bytecode-encoded access policy string\r\n```\r\n\r\n```bash\r\nnpm run build:pen     # rebuild pen.wasm from src/pen.zig\r\nnpm run test:pen      # run PEN unit tests\r\n```\r\n\r\n---\r\n\r\n## WASM crypto pipeline\r\n\r\nZEN ships a second WASM module — `crypto.wasm` — compiled from Zig for the algorithms where native WASM compute beats JavaScript.\r\n\r\nThe principle: **use whatever is fastest**. Measure at the micro level, then decide. Hardware wins for SHA/AES/HMAC. WASM wins for algorithms the platform does not expose natively.\r\n\r\n| Algorithm | Runtime | Why |\r\n|-----------|---------|-----|\r\n| SHA-256 | WebCrypto (`subtle.digest`) | Hardware SHA-NI |\r\n| AES-GCM | WebCrypto (`subtle.encrypt`) | Hardware AES-NI |\r\n| HMAC-SHA-256 | WebCrypto (`subtle.sign`) | Hardware SHA-NI — WASM was 7× slower |\r\n| secp256k1 point multiply | V8 BigInt (native C++) | V8 JIT > WASM32 emulated wide mul (8–12×) |\r\n| P-256 point multiply | V8 BigInt (native C++) | same reason |\r\n| **Keccak-256** | **WASM** (`crypto.wasm`) | 25-lane u64, no WebCrypto equivalent — **5× faster** |\r\n| **RIPEMD-160** | **WASM** (`crypto.wasm`) | No WebCrypto equivalent — **1.6M ops/s** |\r\n| **base62** encode/decode | **WASM** (`crypto.wasm`) | Faster than BigInt for encoding |\r\n\r\n```bash\r\nnpm run build:crypto  # rebuild crypto.wasm from src/crypto.zig\r\n```\r\n\r\n---\r\n\r\n## Benchmarks\r\n\r\nZEN ships a micro-benchmark harness in `test/bench/` for data-driven optimization. Each benchmark suite runs with configurable warmup and iteration counts and outputs human-readable color output.\r\n\r\n```bash\r\nnpm run bench          # run all suites\r\nnpm run bench:hash     # hash algorithms (SHA-256, keccak256, ripemd160, DJB2)\r\nnpm run bench:json     # JSON.parse / parseAsync / YSON chunk parser\r\nnpm run bench:dup      # dedup pipeline (dup.check + dup.track)\r\nnpm run bench:radix    # Radix tree vs native Map\r\nnpm run bench:ham      # HAM CRDT comparisons, State(), put() e2e\r\nnpm run bench:sign     # ZEN.pair / sign / verify / encrypt\r\nnpm run bench:base62   # base62 WASM vs base64 baseline\r\n```\r\n\r\nSelected baselines (Node.js, 5000 iters):\r\n\r\n| Suite | Operation | Throughput |\r\n|-------|-----------|-----------|\r\n| hash | keccak256 WASM 4B | 275K ops/s |\r\n| hash | ripemd160 WASM 4B | 1.6M ops/s |\r\n| hash | String.hash DJB2 | 3.6M ops/s |\r\n| dup | full pipeline (Map) | 1.13M ops/s |\r\n| dup | check missing (Map) | 4.54M ops/s |\r\n\r\n---\r\n\r\n## Build and test\r\n\r\n```bash\r\nnpm test             # build zen.js + run full suite (PEN + ZEN unit + core)\r\nnpm run test:zen      # build + ZEN unit tests only\r\nnpm run test:pen      # build + PEN unit tests only\r\nnpm run build:zen     # build:pen + build:crypto + bundle + minify\r\nnpm run build:release # build:zen + uglify all lib adapters\r\nnpm start            # start example relay (examples/zen-http.js)\r\n```\r\n\r\nCurrent baseline: **632 passing**.\r\n\r\n---\r\n\r\n## Architecture\r\n\r\n```\r\nsrc/                  — runtime source (source of truth)\r\n  shim.js             — setTimeout.turn, setTimeout.each, String.hash DJB2\r\n  dup.js              — message deduplication (called on every message)\r\n  state.js            — CRDT vector clock (HAM)\r\n  valid.js            — value validation\r\n  onto.js             — doubly-linked list event emitter\r\n  root.js             — ZEN constructor, universe() pipeline\r\n  index.js            — main entry point\r\n  core.js             — graph operations\r\n  mesh.js             — P2P networking, JSON parse, batching\r\n  websocket.js        — WebSocket transport layer\r\n  chain.js            — method chaining logic\r\n  get.js              — graph navigation\r\n  put.js              — graph writes\r\n  on.js               — event subscriptions\r\n  map.js              — map/reduce operations\r\n  set.js              — unordered collections\r\n  back.js             — chain traversal\r\n  \r\n  # Crypto (formerly SEA, now integrated into ZEN)\r\n  pair.js             — key pair generation\r\n  sign.js             — signing\r\n  verify.js           — signature verification\r\n  encrypt.js          — encryption\r\n  decrypt.js          — decryption\r\n  secret.js           — ECDH shared secrets\r\n  hash.js             — hashing (SHA-256, HKDF, keccak256, PBKDF2)\r\n  certify.js          — certificates\r\n  recover.js          — recover signer pub from signature (no pub input needed)\r\n  aeskey.js           — AES key derivation\r\n  \r\n  # Curves & formats\r\n  curves/             — ECC implementations\r\n    secp256k1.js      — secp256k1 curve (Bitcoin/Ethereum)\r\n    secp256k1.zig     — Zig implementation\r\n    p256.js           — P-256/secp256r1 curve\r\n    p256.zig          — Zig implementation\r\n    utils.js          — curve utilities\r\n    utils.zig         — Zig utilities\r\n  curves.js           — curve registry\r\n  format.js           — key format conversions (base62, EVM, BTC)\r\n  keyid.js            — key identifiers\r\n  \r\n  # WASM-accelerated crypto\r\n  keccak256.js        — Keccak-256 wrapper\r\n  keccak256.zig       — Zig implementation\r\n  ripemd160.js        — RIPEMD-160 wrapper\r\n  ripemd160.zig       — Zig implementation\r\n  base62.js           — base62 encode/decode wrapper\r\n  base62.zig          — Zig implementation\r\n  sha256.js           — SHA-256 wrapper\r\n  sha256.zig          — Zig implementation\r\n  hmac_sha256.zig     — HMAC-SHA-256 implementation\r\n  crypto.js — lazy WASM loader + typed wrappers\r\n  crypto.zig     — WASM crypto module source\r\n  wasm.zig            — WASM utilities\r\n  \r\n  # Policy engine\r\n  pen.js              — PEN policy VM\r\n  pen.zig             — PEN implementation in Zig\r\n  \r\n  # Utilities\r\n  json.js             — JSON parsing & YSON\r\n  buffer.js           — buffer utilities\r\n  array.js            — array utilities\r\n  ask.js              — query handling\r\n  book.js             — paged key-value index used by RAD-style lookups\r\n  graph.js            — graph utilities\r\n  locstore.js         — local storage adapter\r\n  runtime.js          — runtime detection\r\n  security.js         — security utilities\r\n  settings.js         — configuration\r\n\r\nzen.js               — bundled browser/Node.js artifact\r\nzen.min.js           — minified\r\ncrypto.wasm          — 66KB WASM crypto module\r\npen.wasm             — ~27KB WASM policy engine\r\n\r\nlib/                 — storage adapters, extensions, build scripts\r\n  server.js          — ZEN relay / server identity\r\n  builder/zen.js       — bundle script\r\n  builder/pen.js       — PEN WASM build\r\n  builder/crypto.js    — crypto WASM build\r\n  \r\n  # Storage adapters\r\n  store.js           — storage abstraction\r\n  radisk.js          — RAD/Radisk (default)\r\n  radix.js           — Radix tree implementation\r\n  rfs.js             — filesystem (Node.js)\r\n  rindexed.js        — IndexedDB (browser)\r\n  opfs.js            — OPFS (browser)\r\n  rs3.js             — AWS S3\r\n  memdisk.js         — in-memory storage\r\n  \r\n  # Extensions & utilities\r\n  lib/axe.js         — automatic peering / DHT\r\n  mcp.js             — 5-line shim (re-exports start from lib/mcp/server.js)\r\n  mcp/server.js      — full MCP stdio + relay RPC server (IDE-as-ZEN-peer)\r\n  mcp/client.js      — ZenMcpClient — JS library for relay RPC\r\n  protocol.js        — ZACP business logic (inbox, DM, channels, project meta)\r\n  webrtc.js          — WebRTC transport\r\n  promise.js         — Promise API\r\n  then.js            — Promise chaining\r\n  yson.js            — YSON parser\r\n  verify.js          — verification utilities\r\n  and 100+ other adapters, utilities, middleware...\r\n\r\ntest/\r\n  bench/             — micro-benchmark harness + 7 suites\r\n  zen/               — ZEN unit tests (instance, crypto, multicurve, certify, meta)\r\n  mcp/               — MCP test modules (protocol.js, relay.js)\r\n  mesh/              — DAM ping/pong, XOR routing, relay tests\r\n  pen.js             — PEN unit tests\r\n  zen.js             — core graph integration tests\r\n  rad/               — RAD storage tests\r\n```\r\n\r\n---\r\n\r\n## Lineage\r\n\r\n```\r\namark/gun\r\n  → mimiza/gun\r\n    → akaoio/gun\r\n      → ZEN (Zen Entropy Network)\r\n```\r\n\r\nZEN keeps the graph and sync inheritance but has a separate runtime identity, build system, and architectural direction. It is not a thin rebrand — the source has been materially rewritten.\r\n","readmeFilename":"README.md"}