{"_id":"vex-core","_rev":"37-196ce18aa5cba4c56bfe988ff0921aa5","name":"vex-core","dist-tags":{"latest":"0.13.0"},"versions":{"0.1.0":{"name":"vex-core","version":"0.1.0","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.1.0","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"e091a099cf8b4a25a1cc92db79e152698dde1976","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.1.0.tgz","fileCount":47,"integrity":"sha512-fTPmUOQfAi4XujFSc2F4XO+LM8j7D+2Vin0mJKfBo35FOd2FgpYug9+vDk8y4uItGMRVNAcc5ttrns3HViKUfg==","signatures":[{"sig":"MEUCIQCp2JnXD3LaoLAtNxeRSVixSRZaaSDJPMLXjLK5g1A4uAIgUEcfhOyJ1/lA5ANCrcMNxR1eQ0t26EDAWEG2EIJO3kc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":109977},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"bun":"./src/index.ts","types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./client":{"bun":"./src/client/index.ts","types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./server":{"bun":"./src/server/index.ts","types":"./dist/server/index.d.ts","import":"./dist/server/index.js","default":"./dist/server/index.js"},"./framework":{"bun":"./src/framework/index.ts","types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"bun":"./src/adapters/duckdb.ts","types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"bun":"./src/adapters/sqlite.ts","types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"eda7d7a84a861af3c3f1f87fb3cbbaf820310f8c","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"11.4.2","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"nanoid":"^5.1.7","duckdb-async":"^1.4.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.1.0_1776374763711_0.07324785512649257","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"vex-core","version":"0.1.1","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.1.1","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"1b93570a04083f78ff15ccdd17a0525f3016c17c","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.1.1.tgz","fileCount":47,"integrity":"sha512-foGpwYc7lz3FVkXc4+d+8m12UGHk3/GPtXlcFGHZYO1zOF7Yoy8cS45xI7wxmgzNF88cHQ72EmRVdN548z8tFw==","signatures":[{"sig":"MEYCIQCeZ9UVdaXKdygyHeL/KTs+hK7wnpmGQRnHrb5ccuq4BwIhAKUBqr6lueTzhx/vTMmsSQAYNUojuqFZvT0gRcvWpJbj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":109993},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"bun":"./src/index.ts","types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./client":{"bun":"./src/client/index.ts","types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./server":{"bun":"./src/server/index.ts","types":"./dist/server/index.d.ts","import":"./dist/server/index.js","default":"./dist/server/index.js"},"./framework":{"bun":"./src/framework/index.ts","types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"bun":"./src/adapters/duckdb.ts","types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"bun":"./src/adapters/sqlite.ts","types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"eda7d7a84a861af3c3f1f87fb3cbbaf820310f8c","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"11.4.2","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"nanoid":"^5.1.7","duckdb-async":"^1.4.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.1.1_1776374934506_0.561775916612858","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"vex-core","version":"0.1.2","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.1.2","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"eb2161bddffcf1aaa48cfb66de4c60db13b04e72","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.1.2.tgz","fileCount":47,"integrity":"sha512-IyPAJ2mGoZCXG/deRXUmxsfW1bj6bsA2D0T/yklTh4OTgJ5P3cLAJtlESqXQuJpNOoGiDHQSxxw5+Ly/W+LutA==","signatures":[{"sig":"MEYCIQDjpbCP6dNY7NSL09HN52/xMtWfEFm3WBUPHeqJUevrNwIhAOZYUZWO5gxsl8d2+XiHcB5iDgpd3lXwBVXvv+zahlaq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":109763},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js","default":"./dist/server/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"ec66b26a5cef209741d17417fa3af0a0d44952a8","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"11.4.2","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"nanoid":"^5.1.7","duckdb-async":"^1.4.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.1.2_1776375220116_0.45624379622678335","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"vex-core","version":"0.2.0","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.2.0","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"f792671f1009b5d41d20e637983ac1b6e832ed00","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.2.0.tgz","fileCount":47,"integrity":"sha512-zNxsTOxYKeadBLIEpPJvcA0kYa4mBKPY2CTqIIkLV1GbYHYvXwQGakTBDX7lZn27wodmgmsRH2JclOS4QpEEPA==","signatures":[{"sig":"MEQCIGHByfi5/tGQrzOIYrSoWjITSKJyAIKP4FcLAiUGaE4QAiBhQfHv1M4UHaNQkyQ8ZLqD7gPcxakAchnr3fC97vzbMQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":115916},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js","default":"./dist/server/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"afa0a30fc862b5e90fbab89771250435954d1d19","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"11.4.2","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"nanoid":"^5.1.7","@duckdb/node-api":"^1.5.2-r.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.2.0_1776431979745_0.02767231132745951","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"vex-core","version":"0.3.0","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.3.0","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"e8a3366e1bc0b042cecb8efc7bd18e058086e5ad","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.3.0.tgz","fileCount":77,"integrity":"sha512-GpXBJnOplgcRVYOKwkaYYZOrcpV2Jq2/dG87UC1gVhU8O2/5sVSLF66FJWWg9pkh78NDnQ01HgoRQMWNciGoSA==","signatures":[{"sig":"MEYCIQCLQuVsDzBWk9bX4mlpBCjRhNjAfPb93HXb9zLtArs+6AIhAJ9qQg/+Xaq6+Xh3SMvR+HjMyR5tG+u2T5ZSypE2M+z7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":200258},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"68b6c27a8f57e5d4546def871e68e62c23827d50","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"11.4.2","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"nanoid":"^5.1.7","@duckdb/node-api":"^1.5.2-r.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.3.0_1776434870488_0.11472299517915929","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"vex-core","version":"0.3.1","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.3.1","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"f2636986dce70170b3244a40b4d704e6cef391b5","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.3.1.tgz","fileCount":77,"integrity":"sha512-d/VMes/lTTqa1kiu+cIVS98vi54Ej093AOItUeu2fBTZ2npQ+z0i3VCNNJEQPQFWCPNQBn9yW7jLx8vNY+qRzA==","signatures":[{"sig":"MEUCIQCjJqi+Oe8jefibSEyK8VbJZmR6RMlAcf/cS0x0Qn1oOgIgO9rBYgYSMu5GAW09yCKeQ7+tJJ2JDh+PciUV9jk4vKE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":201084},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"fc02452dce0b37a439a00184c792081f8357b0cc","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"11.4.2","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"nanoid":"^5.1.7","@duckdb/node-api":"^1.5.2-r.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.3.1_1776435565584_0.8553048727735408","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"vex-core","version":"0.3.2","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.3.2","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"1a79defd8208693c8d21e8ab818eab150cb8f585","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.3.2.tgz","fileCount":77,"integrity":"sha512-M/NbrI8HebkZ4bx2xhHNYAflmpxts2pbZxayppd9jWHoXmTFXRR8u4PEP4a1epjrvZIyZr52ckrqetglF4A/+g==","signatures":[{"sig":"MEQCIA7t4gqBXUAz/+L6S0kHB+RRh10EPACYLE1UsThycdEaAiAtRZqXoWHHcZiGbODAdquDDJlWXQeFDymGnqrH1V9vIg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":202002},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"fc02452dce0b37a439a00184c792081f8357b0cc","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"11.4.2","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"nanoid":"^5.1.7","@duckdb/node-api":"^1.5.2-r.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.3.2_1776456164196_0.5193717628807026","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"vex-core","version":"0.3.3","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.3.3","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"c1295eaa668017490777f30956a9ee4b3f77d27f","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.3.3.tgz","fileCount":77,"integrity":"sha512-sq7rY6KDGe/FwgumQPdn41YHOgk5Rpn57tohh7i/Ireo4vW5XqiJxBonTeT9CujNFmVnOqD+lXI/81v6Wa9w4w==","signatures":[{"sig":"MEUCIQCU4MVaWWpRPpdktUom2zAqhuxb6HzNnECbsb6YekvhkQIgO0aVdzlSbGYDOk4pWuh0D40vEjpETvoeLtQ/rE7AX1Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":202364},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"e307173630d8345b82ff26c8dbb29565a32e1bcb","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"11.4.2","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"nanoid":"^5.1.7","@duckdb/node-api":"^1.5.2-r.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.3.3_1776458053475_0.3187260397545111","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"vex-core","version":"0.3.4","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.3.4","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"eaaf027e51273293f61b8c92972a805f338c009e","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.3.4.tgz","fileCount":73,"integrity":"sha512-SZvLMTuducSKB/gk0zFeHxwHIwzRQAwiYkADAZiUhqFT87TNfMK8k299BEfXGERkRKQSNT9WxhWiEOd96yVPvg==","signatures":[{"sig":"MEYCIQDaJF/GuhzNwqM3j8Mm2sw6F+CG9FjlBOPSMQfsHxN3xAIhAOLtmtrGu1Wa7oN97ZGqs4tDEfLMsNCUDTeeYunLr/bm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":196188},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"2d5a3cc5eeed0038b9f7740825fd0d4f84c65840","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.7","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"nanoid":"^5.1.7","@duckdb/node-api":"^1.5.2-r.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.3.4_1776516436927_0.20560556627517124","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"vex-core","version":"0.3.5","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.3.5","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"867a88ac061fbe354d09b8f545b6140fc49c07ae","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.3.5.tgz","fileCount":73,"integrity":"sha512-+tTSkQIzJZ2Is7YWkCMhFfWEYGxkX4MZxyWsH9FIlTeRXVWTH40rZmYxL7sWSYkETefbVnObfcwaaoJUTRcFlA==","signatures":[{"sig":"MEUCIQCTNCezq3DtltjYbwKi2ffm+jSvKSKlVybHI2SlIt9hMQIgM55HhuwNm497ng4RtWa1evCQ36P024HzCWIZLnyCP6U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":196951},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"416d9b4348f35b97e0d697841b11ff8b7f524e96","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.7","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"nanoid":"^5.1.7","@duckdb/node-api":"^1.5.2-r.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.3.5_1776582271982_0.3299293593526551","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"vex-core","version":"0.3.6","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.3.6","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"7460efb87906fc5601a8b300b358aa3b3d5b8527","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.3.6.tgz","fileCount":73,"integrity":"sha512-2C4KAZARWb+gDZ71WyPpxEfaUwtjjSUNXTHCgfzPaVePn7ESxMwDEvaMq0XMi2Puleqf/XiTG3up5iYADBPnNg==","signatures":[{"sig":"MEQCIBSsgPnuCNXiP7WCfuTvnay5agjZq70vj/taAQKSryxfAiBxlrpvJda3FFoeiKmM8QlR1WkWkYM6MF9gtht5qk+GdA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":197898},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"079415e7459a3ec057bc7c0a2b8e8688096b4ae3","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.7","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"nanoid":"^5.1.7","@duckdb/node-api":"^1.5.2-r.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.3.6_1776583076533_0.18415275645807805","host":"s3://npm-registry-packages-npm-production"}},"0.3.7":{"name":"vex-core","version":"0.3.7","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.3.7","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"39bd7edb697a431e99f8d521b1a5bb0120e2e2be","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.3.7.tgz","fileCount":73,"integrity":"sha512-SC6L6ue1yVMeAcXr0oOkm/4eGVTSW6LnlQsGvlDQoCS20FVGxZRZbfrUOLe0vBupYY/+ksG4i5zH/w73SRFxUw==","signatures":[{"sig":"MEUCICZotm274jAhD1y+RDaGYXGVNOn/FQ1FjbcrCBS2HUKnAiEAthb4jiXkk6WfqNftF7PxwgA76I/V/KpslMMN50rwlek=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":198809},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"cd37ea182ce1bf0bfd27c2db02e3b61718b0b942","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.7","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"nanoid":"^5.1.7","@duckdb/node-api":"^1.5.2-r.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.3.7_1776583907449_0.6458296475649039","host":"s3://npm-registry-packages-npm-production"}},"0.3.8":{"name":"vex-core","version":"0.3.8","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.3.8","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"ff236ed2d0ef25c7615df1b2442b1efd22ff5c8f","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.3.8.tgz","fileCount":73,"integrity":"sha512-fT77sOHnruUXNnPAZub9e8/8MsnfyeBnrEIpOFEIjVlNkhYRJTtsAhQljVZmi1P1XlXbJHd3ScPj64ExHw49Kg==","signatures":[{"sig":"MEUCIQDjL3zL30/Qje+Pm4HFDkSN/jjumDz7YCjZHAm9Vd/SZQIgcTD4dmuQB6+IdsVS+XrVnIXLZOXHNUtrq0wqxryb4dw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":198809},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"05b1b7ea5f8299eefc9db8c40b5f3f04bbba72b1","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.7","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"nanoid":"^5.1.7","@duckdb/node-api":"^1.5.2-r.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.3.8_1776584134492_0.557521416277249","host":"s3://npm-registry-packages-npm-production"}},"0.3.9":{"name":"vex-core","version":"0.3.9","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.3.9","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"aaae4ed4b58839059a3c906cd62c7aafed280c08","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.3.9.tgz","fileCount":73,"integrity":"sha512-C3Aji5PRYqliE4b0PSIhbdkIai9gvuGudaHFlgLBVbXEZTyutc2XTrNyTCuFjh+QsGtcMAx5Q+tkGsryrvWRlA==","signatures":[{"sig":"MEQCIEA3S980PVXkfDsUSR5MMwrXnbVX4wSVFcl/yGITz9fGAiAFGUc3Uu6EsTS4rTkuEpGjQH58Dzq9GT7Md9g9XHupaw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":198785},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"f655a12e381f75794f1554e6add41ad2a9976bb9","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.7","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"nanoid":"^5.1.7","@duckdb/node-api":"^1.5.2-r.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.3.9_1776971803560_0.13693693721324696","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"vex-core","version":"0.4.0","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.4.0","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"5ea368472aff25b11020c15326a87d3f4a6bb639","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.4.0.tgz","fileCount":77,"integrity":"sha512-dIIc2XKThFpAk59waiMZ2oxgTCyCSmCtd9TpepnoBaUkXD8gwJ3UsMOaUV7bTD1CEmaQV8LP1Nu1fxC4byl9aA==","signatures":[{"sig":"MEUCIQDDo5t7KkJyi9SXxEpy/46LDtZhzHUXoLQMOVvEo0YD3AIgBU3qoGm7LzlyQL5GYnt/AFt1pOC098lbheb8pJ2wNkk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":230990},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"49c84c9aab3fe9107fff1c365a84e4fe7ac65cdd","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.7","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"nanoid":"^5.1.7","@duckdb/node-api":"^1.5.2-r.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.4.0_1777543431683_0.7333536033027317","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"vex-core","version":"0.4.1","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.4.1","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"9a683cfaf825c2a3d071c2f3e2f2bd796ff746e4","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.4.1.tgz","fileCount":77,"integrity":"sha512-MpHbQgByMqUPUJi0XwQs21Z8GTMzkMZqqTcivwL+BZ9049qK3onSX6uokMLX9ld2G/p505Sr+hAR80tMDwS/mw==","signatures":[{"sig":"MEUCIGgPkPpQ1jcuZu3AgAFD77fAUe33GCaH9ty6ZI138JLoAiEAw/R21QalILC5/rGnFR3KItM5d7KKOnI6+IzkI8B+6Ko=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":231397},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"eee837f62a9a60aa3cb8a9df61aca2569c6c35a0","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.7","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"nanoid":"^5.1.7","@duckdb/node-api":"^1.5.2-r.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.4.1_1777544010539_0.5058640413686664","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"vex-core","version":"0.4.2","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.4.2","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"4dedfb7077cdc9e5f13a09c9912ead570702b8cf","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.4.2.tgz","fileCount":77,"integrity":"sha512-C9CAIoEOyTEGYMfvtWEtetpbm9fCKt1EgEXCmz69B0rcnk4r+JtpaGajYaTMdEQbsiRMZymJ9+v8MUv9Y3kPzA==","signatures":[{"sig":"MEYCIQCLVHKmU7fheSjxaUv7gIVOpqsBs0bjxJWuZNvEJ9bPHAIhAJeJ1V/gjHQXJ+U5pltAOhXS1vcx7gYJPVGdMmAKftRH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":231971},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"1a5b28c5db73bffbfddd099c8f09936540336b1e","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.7","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"nanoid":"^5.1.7","@duckdb/node-api":"^1.5.2-r.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.4.2_1777549599090_0.9478752812615587","host":"s3://npm-registry-packages-npm-production"}},"0.4.3":{"name":"vex-core","version":"0.4.3","keywords":["database","reactive","sqlite","duckdb","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.4.3","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"7ba4d6fb0c7cfeda0310321348c4a5bbfbbbe23b","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.4.3.tgz","fileCount":77,"integrity":"sha512-FVJoD7ABalPKGog0vA8dfqfowsPYPba2RHrNVacYKS2sL0D7Ch7tK7uPXOlmCroG0K3mlvFwYG6ftuHqX4u4tg==","signatures":[{"sig":"MEYCIQCuiMRgpzhSm1MsQ/KCICBA+GMvN+HocfUG7mXoUk3s2wIhANOaGAKZK6YAJQ/uzwP71XtfU6TmZQtFpj2NT0r/AObl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":232730},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/duckdb":{"types":"./dist/adapters/duckdb.d.ts","import":"./dist/adapters/duckdb.js","default":"./dist/adapters/duckdb.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"67a818f8ec3a07f15fac9a460481a8d3fa08c390","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.7","description":"Local-first reactive backend engine. Plugin architecture, SQLite + DuckDB storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"nanoid":"^5.1.7","@duckdb/node-api":"^1.5.2-r.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.4.3_1777887425659_0.656504636901095","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"vex-core","version":"0.5.0","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.5.0","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"a027ed5cfe40e108bddd34837109abd1f4d377df","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.5.0.tgz","fileCount":75,"integrity":"sha512-R+91IPHLWP8Yeg2nGp2L/B2QqCSEzSnyrIesGGwaAHwiubxNXvjjg0RLV8K7VicravHu+oBkjwxFSIJO6L5vFA==","signatures":[{"sig":"MEUCIQD8iQLnCoSRNYZ3o91Qe8bseshn30JaOLRRZkWR0I0xKAIgdOWSIY4Gkgjy9xdUVXdLTsxZnhrbW6HqUQZBelOCwvI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":233374},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"4fe6b119776ac1542d84f80e9d746db7045dbac5","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.7","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.5.0_1778446265845_0.836329644295724","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"vex-core","version":"0.5.1","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.5.1","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"8dae107cb22fe426a5bd6ddc2c6a8ed82a9ecc5c","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.5.1.tgz","fileCount":75,"integrity":"sha512-tsu40ctfqyFi/xnIQWolmcW91XvyVmf9yXXM7kI5Kcy0ZK0wT+0DuuuDasyMjynlr6h9dy0LP4TSFchR56G1sw==","signatures":[{"sig":"MEQCIGDtclWTeat50IC/xsNcdqLzXV/MH9UZbO0hQVh++UBNAiBAwiEi0tPLsfVdOllvJQYdnCRokvl9mqjWVHdg0CJiHw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":233387},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"1f364ddea7877b95a4891b7b73f0ac46c0b3c3e6","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.7","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.5.1_1778521307116_0.8382930962885471","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"vex-core","version":"0.5.2","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.5.2","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"20e91f96dc71e9b56a37a90eca5f9178a561a8ca","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.5.2.tgz","fileCount":75,"integrity":"sha512-5QXLYVZUOqi2yRHezS8y1hfq18P0QsTzOxgtU9rjc2pjzrlI3Ux06dKgoh4JUiKy1GKT1+4HajJ/RUxzyWiB0A==","signatures":[{"sig":"MEUCIQC5czsaTZVDzCbVfz7WT+fVepiND9kibzm1BB6HD4dzrwIgJwZ2SX6w+VH9InQmCrWJ75ztyRKC32+eQ4vZZFdkhEw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":232436},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"68733238c2792f0770d91f2dae3af5b6f953735a","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.7","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.5.2_1778683797653_0.9515274663656605","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"vex-core","version":"0.6.0","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.6.0","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"541081d21789fd0e14ce9dd0ea4bbc1ce0896eca","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.6.0.tgz","fileCount":75,"integrity":"sha512-rws55Xjn3meO686vVVxy5FR+Da6L3zeF+WseQuLWDFLBV/ccYQEngkq6bE3rmS5UfXvdpGwYgysOZ1xuqbLUhw==","signatures":[{"sig":"MEQCIG0f9kAkba7zTJXLlokYMSnQk4a8+R2QivgFnrUMijHzAiAeldjzvbE8kkArstVZfH/ogHeywp6kpqB8p0r9DJTyAw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":234349},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"1b714c2e95d17de70b6ba4648850da13d6c4736f","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.8","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.6.0_1779477645729_0.2519054587291183","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"vex-core","version":"0.6.1","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.6.1","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"21a5374992607a4365702a28dc4ee3cebd4744e5","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.6.1.tgz","fileCount":75,"integrity":"sha512-U1nmcnlR74TPYv5B57yMRRk5zF/RKBmbODKKdEg2reg5MVV2d14ulF8Rq+IVkYLFNQ9Jz6hp0dE0xB32ogPO6w==","signatures":[{"sig":"MEUCIG48xtfjUtvlBq5TMcqLgC416QCXyci4iyjZna1mL5iPAiEAnE2BCKDtljELJcFhAavFGlk/nCN7QBWG+x5wfgXzsWY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":235278},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"b03716f6bc7cbed25e742f637460c8b6268142c4","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.8","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.6.1_1779478223178_0.6741420347044849","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"vex-core","version":"0.7.0","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.7.0","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"8152369eb883159acc685ea209fc3957a173e8db","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.7.0.tgz","fileCount":75,"integrity":"sha512-e5RLTEsn2qQYu2moPFs9JpG51/v67xAuPeeVwNAIdnxwdgRrPpsg2hDJksIgMWNRvUiZ4tk6xPOl0IOXELl5kg==","signatures":[{"sig":"MEQCIDg2UukY+59JWvu2apc4lAqbtXnAwAF2SC6PbmAzlyq0AiBDj9jQkh0GxpYCDJ+dbxSrX8Wgrass9HMcwtMFHLdP5g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":226449},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"9fe851444b619015e6f928e3b3ae334230f6fb3a","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.8","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.7.0_1779478608313_0.09013930825620253","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"vex-core","version":"0.7.1","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.7.1","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"9e428f7b3e991f5b4532095e201a1e682602758a","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.7.1.tgz","fileCount":75,"integrity":"sha512-y4ah1Yw9zGQ5FgX6xYo+sHuitEXEY9na9oUF/qkbWyfFVm2H8u7g02hk+RajeJODrRflXoGZu6nUqxWOQsqeiQ==","signatures":[{"sig":"MEUCIQCM3mQrF4lePS8JZA4UhyUbmDQ77IbkA2w42/r6Q8Ti/AIgDvi8xZIPrqAMK2dVbMPQqnYgXsg/AAvGGy2PuqU/+wM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":229360},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"50640e415d6d4c766f23a0abaa35e80258f215ee","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.8","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.7.1_1779564489326_0.6976157116709358","host":"s3://npm-registry-packages-npm-production"}},"0.7.2":{"name":"vex-core","version":"0.7.2","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.7.2","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"8ecda7a666b974c9ca7a77edf6d4de86e48468dd","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.7.2.tgz","fileCount":75,"integrity":"sha512-fVbTnPtCw2YOJmX1MExIthtH1iqn+1doJjwn2XT9iVVstE2nnV020irjqhea3Js+PllU8T8rw+fU9zfSguVISQ==","signatures":[{"sig":"MEUCIEy+uSiCSefNDBMJ3DOfgMXBcd8QJ3XVZhDxyhmknlSNAiEAhk0w0wyY6YWFgA1bo81lrLJg6M2o9h/YAM06Wq+gGh8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":229931},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"6945a83324eae5f4798da5bc70ebafa8a3553663","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.8","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.7.2_1779565775324_0.055895366689051595","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"vex-core","version":"0.8.0","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.8.0","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"02c95f78889d6af91cbc5179bac1257d42c4ae4a","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.8.0.tgz","fileCount":75,"integrity":"sha512-fO/qqaIZR64yz/UDnSW2SmFQtNhjtWlB2QcgN2zWzs5/4A3BzB/oWleeTx3Nnxg6fgwyFDT7fDCH375kuhRICQ==","signatures":[{"sig":"MEUCIQDTTqJfsl+wITzcb3oaV3yeGtXV247n+V9lJSbguaIy2AIgIwVfvxE1N5d9WZDjW562I39/8uL/XwNocCg/Tph1KiQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":241011},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"f68fda2e0c9b40fad4791927e4869ffe78e8003d","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.8","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.8.0_1782292579112_0.9293934915497992","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"vex-core","version":"0.8.1","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.8.1","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"e60ad53036e608b7474b956de8b2d922f048bc7d","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.8.1.tgz","fileCount":75,"integrity":"sha512-s1mJhSkeluAnBMFO776R9LA8xy4OdfdpnEIwwkQIGGt+ZAfVMwvLJSDlcCwMDpSE79jRNaeXD2QyFZAObKlcpA==","signatures":[{"sig":"MEYCIQDz74zVt7hOcm444squH4HsNFG4G5CTeBC0kH16b/HT4wIhAMN5yodWxjnD3aqPnXSW86xATVC/iqG5EyL5v2y0hEtW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":241011},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"e3795ab3fbe9e8c19a149916ace5e7ba865ce3a6","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.8","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.8.1_1782293487800_0.5280845157543219","host":"s3://npm-registry-packages-npm-production"}},"0.8.2":{"name":"vex-core","version":"0.8.2","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.8.2","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"73a22401f36c79f991f09d66ea1712e172bad7c2","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.8.2.tgz","fileCount":75,"integrity":"sha512-iWMFsgSO6aCP3orv5GZfZ6/4ZzkFaBGsP7i/eJXUBhUr8w0LcaplduYBTmSz9jFP9dBn/NKRG5/pJWL1dE0+3A==","signatures":[{"sig":"MEUCIBucxzLoZIHLRhFgwSfum0WfaDXx+0DD0aRa22+zDse9AiEAitLdrlux5KsPeltnX9E1ioPHDki3XSDq2KFhHfQxtbc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":241633},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"ba654f8255bca54aa343cae63aa411dc77499145","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.8","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.8.2_1782884738781_0.8776599764509727","host":"s3://npm-registry-packages-npm-production"}},"0.8.3":{"name":"vex-core","version":"0.8.3","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.8.3","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"0eb0f76dfef0052f2a76a9ab477300d72684e15b","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.8.3.tgz","fileCount":75,"integrity":"sha512-TbpOmqe+DCvTIE0hlnBWzUxaUza2jwfwpjvNBTta2HWan/0LhxoAf9C9vnzgEUpTr0e+TujRo62uHvfd/GSEAQ==","signatures":[{"sig":"MEUCIQC36JlHGObTLZO/t9WB63QtZ0wExyfV5cZa3Gsz2TiYYwIgJdOW8nzbK/5i711Ab9CxjvSekZWXdhNDA1Ijw2JMbpY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":243323},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"d58f10022108f058abdb812c045caf34dd41bfdb","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.8","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.8.3_1782987496393_0.5747610855948599","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"vex-core","version":"0.9.0","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.9.0","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"56476926c6b699114e895b160b806315fc6d8316","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.9.0.tgz","fileCount":75,"integrity":"sha512-+LOqXa00988e0UVORM/4rrgzA3pUSW2Km23DP6ou0Zbv3E+AtvfrmzlH3u7JdgyvCqD+LZ5ACc6rhQzLgU68dA==","signatures":[{"sig":"MEUCIBBlqZwuvzkD8Q2RjyRE+RSYwXvoCXnU+Pbo+oW77oBLAiEA24FB1yYYuhDotUG6S6kyYyTc/dMnEEapeJYLM7Ah2m0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":250769},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"c9eba685508eaf290911cf4399abda454b9cee09","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.8","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.9.0_1783493824825_0.5827595375960724","host":"s3://npm-registry-packages-npm-production"}},"0.9.1":{"name":"vex-core","version":"0.9.1","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.9.1","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"b42a71b4c1033f39658351e9a992496352892429","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.9.1.tgz","fileCount":75,"integrity":"sha512-kUcz6+njuFFqviLZNx+cf5QtIzGA/ZGwiUqS++cEnUozzuz/i2DvAQhNRjc0C06FT52UfmzLFy/v+iL8kpub3w==","signatures":[{"sig":"MEYCIQDgolxRVSh85RfyLGYQz7RdEYh0FWxm7ur+NahNV/RZNwIhAO/FkvvGJhdWIgBbIr9i6l3flSp/rf/4xLBu99Ejt98k","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":256375},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"34d3af64a9d43d7137a6780029f91b9dc90329f1","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.8","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.9.1_1783506459501_0.3898245125803008","host":"s3://npm-registry-packages-npm-production"}},"0.9.2":{"name":"vex-core","version":"0.9.2","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.9.2","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"6d975c9d951165af665b617fb0fc7f483d8ea85d","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.9.2.tgz","fileCount":77,"integrity":"sha512-HayK7VEyTSEwyZA2a+Uen4QamfpORNiH53yWHqgCrTfj6OauNiPXHkXmZf85vKSXsrN3sr2pllmuXFofiSPDOQ==","signatures":[{"sig":"MEUCIFKAru1HdFsLFCbg6dz70ifVfLDt6+8QlWe851qxjSp1AiEAvqZK2Nkmp1wh/nfQg/aM7ruwQtT5o9/O2aBtPzhOHVY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":261537},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.3.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"394b1841f869389d43b99440feac809dfd0166f3","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.8","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.9.2_1783933523177_0.7717932319749126","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"vex-core","version":"0.10.0","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.10.0","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"314f3d7ff4d49fb941221aaeaabac94fb0e0f2e6","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.10.0.tgz","fileCount":77,"integrity":"sha512-0feDrpbJTGt+J+DSVOaS6wzkblpEXAOgVPFOuqdr1fqulXB6Xj9Mz2GWTODB7bc9jhZ81onoFAgSNXVR8zpv5A==","signatures":[{"sig":"MEYCIQDVGSRdCUYH7a526oKzjtTJCIXtZ16HV3KxpmfzdT7i9AIhAOs801FJ2r7QIEdhOzJivSRiscxh/XxFu4+pq2B3rQAj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":274179},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.3.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"82834e4a02a574d21d28f772e5f32e5a276f44bf","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.8","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.10.0_1784108939511_0.06272854776069181","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"vex-core","version":"0.11.0","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.11.0","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"6c0643c1b03b5e47666fcf4a261308963c8196e6","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.11.0.tgz","fileCount":77,"integrity":"sha512-pMTEXd1H9ZprymD1vf1GPDRwe4rYU6W0S2l0dWAkfnNj9ymumwzPO+PoEcNZtgNH6xOQag7Dt0MRhM7q+/ElXA==","signatures":[{"sig":"MEUCIQCboFQwaKNaixDV8gwVFV1sr9thI1IzC3ut8Azu5kfvrwIgKgq+qFmpdVlQoUz9EykvHz4zsWob6lAjv4UqSNGhE3Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":275223},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.3.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"85fba3240030d27b438d261b281d284ba0027fab","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.8","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.11.0_1784754320414_0.5190095106597119","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"vex-core","version":"0.12.0","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"author":{"name":"Michael Liv"},"license":"MIT","_id":"vex-core@0.12.0","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"homepage":"https://github.com/Michaelliv/vex-core#readme","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"e065cdbd5014c699a135f40c8c5d1bca7ffa4362","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.12.0.tgz","fileCount":77,"integrity":"sha512-1qeK7dSkyN+D2kKA9cKwCiYqpMVjZs6texdB+jXiHtNPZ5DEH3/3J87xsLISGgR6Wad7kf5ZDyhtKo6hy8WzyQ==","signatures":[{"sig":"MEYCIQDWE5kt88wlE2bdaruMR/Op0LTeTJfi6pMzvU36HVRv2AIhANwkXhwNAjsQBzHRE+1cCY/vPME3niOpeC6fkKXyFL8n","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":286446},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.3.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"d645b48fe92acb18176af38bf0469c242564dd89","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build","bench:sqlite-read":"bun benchmarks/sqlite-read-contention.ts"},"_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.8","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vex-core_0.12.0_1785451071985_0.8147968022041312","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"_id":"vex-core@0.13.0","bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"dist":{"shasum":"7d660bb17a569328a06e346b881267a6b14e8266","tarball":"https://registry.npmjs.org/vex-core/-/vex-core-0.13.0.tgz","fileCount":79,"integrity":"sha512-u1glNaGT8tY+gpSw1u1MvhUN8mCPyDk12fmOsJTfCiEh+Iv/nV5tVQ6thNYw2lFQD/jRl9fxcx1UqHMVPIsxRA==","signatures":[{"sig":"MEUCIHRF5dOiZR3xenkIwf+oEYi/8lr08oJ9ADQo4BqFTrDMAiEAq3Q5tT+OoqKB/p+4vYJT+WBcF9PSEXiocDqwrYVh6+0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDsLSISiTfU1hPxUOomd/roVMCWO8VJE+Qut8X7RciKyQIgeeNoL7YViW75UDp8atoTVcBBkwrf9Zw0T6qUsgB96zk="}],"unpackedSize":308371},"main":"./dist/index.js","name":"vex-core","type":"module","types":"./dist/index.d.ts","author":{"name":"Michael Liv"},"engines":{"bun":">=1.3.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./http":{"types":"./dist/http/index.d.ts","import":"./dist/http/index.js","default":"./dist/http/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js","default":"./dist/client/index.js"},"./framework":{"types":"./dist/framework/index.d.ts","import":"./dist/framework/index.js","default":"./dist/framework/index.js"},"./adapters/sqlite":{"types":"./dist/adapters/sqlite.d.ts","import":"./dist/adapters/sqlite.js","default":"./dist/adapters/sqlite.js"}},"gitHead":"26db1d58c863bfade48c0748bc25ae7661706c36","license":"MIT","scripts":{"lint":"bunx biome lint src/","test":"bun test","build":"tsc","check":"bunx biome check src/","format":"bunx biome format --write src/","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun run build","bench:sqlite-read":"bun benchmarks/sqlite-read-contention.ts"},"version":"0.13.0","_npmUser":{"name":"miclivs","email":"livsmichael@gmail.com"},"homepage":"https://github.com/Michaelliv/vex-core#readme","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"_npmVersion":"10.9.8","description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","directories":{},"maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"_nodeVersion":"22.23.2","dependencies":{"nanoid":"^5.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.17","typescript":"^5.8.0","@types/react":"^19.2.14","@biomejs/biome":"^2.3.14"},"peerDependencies":{"react":"^19.2.4"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/vex-core_0.13.0_1788164003240_0.49794214874415244"}}},"time":{"created":"2026-04-16T21:26:03.571Z","modified":"2026-08-31T08:13:23.511Z","0.1.0":"2026-04-16T21:26:03.845Z","0.1.1":"2026-04-16T21:28:54.698Z","0.1.2":"2026-04-16T21:33:40.263Z","0.2.0":"2026-04-17T13:19:39.905Z","0.3.0":"2026-04-17T14:07:50.615Z","0.3.1":"2026-04-17T14:19:25.755Z","0.3.2":"2026-04-17T20:02:44.350Z","0.3.3":"2026-04-17T20:34:13.619Z","0.3.4":"2026-04-18T12:47:17.107Z","0.3.5":"2026-04-19T07:04:32.118Z","0.3.6":"2026-04-19T07:17:56.697Z","0.3.7":"2026-04-19T07:31:47.580Z","0.3.8":"2026-04-19T07:35:34.670Z","0.3.9":"2026-04-23T19:16:43.691Z","0.4.0":"2026-04-30T10:03:51.833Z","0.4.1":"2026-04-30T10:13:30.677Z","0.4.2":"2026-04-30T11:46:39.239Z","0.4.3":"2026-05-04T09:37:05.837Z","0.5.0":"2026-05-10T20:51:05.996Z","0.5.1":"2026-05-11T17:41:47.284Z","0.5.2":"2026-05-13T14:49:57.819Z","0.6.0":"2026-05-22T19:20:45.974Z","0.6.1":"2026-05-22T19:30:23.351Z","0.7.0":"2026-05-22T19:36:48.494Z","0.7.1":"2026-05-23T19:28:09.471Z","0.7.2":"2026-05-23T19:49:35.484Z","0.8.0":"2026-06-24T09:16:19.267Z","0.8.1":"2026-06-24T09:31:28.022Z","0.8.2":"2026-07-01T05:45:38.912Z","0.8.3":"2026-07-02T10:18:16.533Z","0.9.0":"2026-07-08T06:57:04.968Z","0.9.1":"2026-07-08T10:27:39.643Z","0.9.2":"2026-07-13T09:05:23.301Z","0.10.0":"2026-07-15T09:48:59.682Z","0.11.0":"2026-07-22T21:05:20.584Z","0.12.0":"2026-07-30T22:37:52.153Z","0.13.0":"2026-08-31T08:13:23.330Z"},"bugs":{"url":"https://github.com/Michaelliv/vex-core/issues"},"author":{"name":"Michael Liv"},"license":"MIT","homepage":"https://github.com/Michaelliv/vex-core#readme","keywords":["database","reactive","sqlite","local-first","convex","plugin","backend"],"repository":{"url":"git+https://github.com/Michaelliv/vex-core.git","type":"git"},"description":"Local-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions.","maintainers":[{"name":"miclivs","email":"livsmichael@gmail.com"}],"readme":"# vex-core\n\nLocal-first reactive backend engine. Plugin architecture, SQLite storage, real-time subscriptions via SSE.\n\n```\nnpm install vex-core\n```\n\n**Runtime requirement:** Bun 1.3+\n\n`vex-core` intentionally targets Bun. Its SQLite adapter, reactive hashing, and WebSocket server use Bun runtime APIs.\n\nPeer: `react` ^19 (only if you use `vex-core/client`).\n\n## Quick start\n\n```ts\nimport { Vex, sqliteAdapter } from \"vex-core\";\n\nconst vex = await Vex.create({\n  storage: sqliteAdapter(\".vex/data.db\"),\n  plugins: [\n    (api) => {\n      api.setName(\"counter\");\n      api.registerTable(\"counters\", {\n        columns: { key: { type: \"string\" }, value: { type: \"number\" } },\n      });\n      api.registerMutation(\"set\", {\n        args: { key: \"string\", value: \"number\" },\n        async handler(ctx, args) {\n          return ctx.db.table(\"counters\").insert(args);\n        },\n      });\n      api.registerQuery(\"list\", {\n        args: {},\n        async handler(ctx) {\n          return ctx.db.table(\"counters\").all();\n        },\n      });\n    },\n  ],\n});\n\nawait vex.mutate(\"counter.set\", { key: \"hits\", value: 1 });\nawait vex.query(\"counter.list\");\n\nconst unsub = await vex.subscribe(\"counter.list\", {}, (rows) => {\n  console.log(\"changed:\", rows);\n});\n```\n\n## Reactive safety\n\nExplicit `query()` calls may return large results. `subscribe()` calls may not: reactive queries are re-run after writes, hashed, and delivered to callbacks, so Vex enforces row and byte budgets before accepting or continuing a subscription.\n\n```ts\nconst vex = await Vex.create({\n  storage,\n  plugins,\n  reactive: { maxRows: 500, maxBytes: 512 * 1024 },\n});\n\napi.registerQuery(\"list\", {\n  args: {},\n  reactive: { maxRows: 100, maxBytes: 64 * 1024 },\n  handler: (ctx) => ctx.db.table(\"items\").limit(100).all(),\n});\n\napi.registerQuery(\"export\", {\n  args: {},\n  reactive: false,\n  handler: (ctx) => ctx.db.table(\"items\").all(), // query() only, not subscribe()\n});\n```\n\nReactive metadata is recorded on spans: `resultRows`, `resultBytes`, `reactive`, `budget`, and `budgetExceeded`. Query-builder reads record dependency descriptors for table, filters, selected columns, ordering, and limits. Raw SQL is tracked conservatively by parsed `FROM`/`JOIN` tables; external API work and unbounded exports should stay outside reactive queries or be marked `reactive: false`.\n\n## Query builder\n\nReads, filters, aggregations — pushed down to SQL.\n\n```ts\nctx.db.table(\"orders\").where(\"region\", \"=\", \"US\").all();\nctx.db.table(\"orders\").where(\"amount\", \">\", 100).select(\"id\", \"amount\").first();\n\nctx.db.table(\"orders\").count();\nctx.db.table(\"orders\").sum(\"amount\");\nctx.db.table(\"orders\").avg(\"amount\");\n\nctx.db.table(\"orders\")\n  .groupBy([\"region\", \"product\"], {\n    revenue: [\"sum\", \"amount\"],\n    count: \"count\",\n  })\n  .having(\"count\", \">=\", 10)\n  .order(\"revenue\", \"desc\")\n  .limit(20);\n```\n\n## File-based conventions\n\nFlat files, no config. Use `scanDirectory` to turn a folder into plugins.\n\n```ts\n// schema.ts\nimport { table } from \"vex-core/framework\";\nexport const todos = table({ text: \"string\", done: \"boolean\" });\n\n// todos.ts\nimport { query, mutation } from \"vex-core/framework\";\nexport const list = query({}, async (ctx) => ctx.db.table(\"todos\").all());\nexport const add = mutation({ text: \"string\" }, async (ctx, args) =>\n  ctx.db.table(\"todos\").insert({ text: args.text, done: false }),\n);\n```\n\n```ts\nimport { scanDirectory } from \"vex-core/framework\";\nimport { Vex, sqliteAdapter } from \"vex-core\";\n\nconst { plugins } = await scanDirectory(\"./app\");\nconst vex = await Vex.create({\n  storage: sqliteAdapter(\".vex/data.db\"),\n  plugins,\n});\n```\n\nAlso supported in files: `webhook(path, handler)`, `job(schedule, handler)`, `middleware(fn)`.\n\n## HTTP\n\n`vex-core/http` is a small, composable HTTP toolkit built around the Fetch API. A `Router` matches methods and paths (via `URLPattern`), middleware wraps the chain in classic onion order, handlers return `Response` (or `undefined` to fall through). Inspired by Vert.x Web and Koa; no dependencies beyond Bun's built-ins.\n\n```ts\nimport {\n  createRouter,\n  vexHandler,\n  cors,\n  bearerAuth,\n  accessLog,\n  requestId,\n  errorBoundary,\n  serveDir,\n  serveFile,\n  sessions,\n  HttpError,\n} from \"vex-core/http\";\n\nconst app = createRouter()\n  .use(errorBoundary())\n  .use(requestId())\n  .use(accessLog())\n  .use(cors({ origin: \"*\" }))\n  .use(bearerAuth({ token: process.env.VEX_TOKEN! }))\n  .mount(\"/vex\", vexHandler(vex))\n  .get(\"/assets/*\", serveDir({ dir: \"./dist/ui/assets\", stripPrefix: \"/assets\" }))\n  .get(\"/*\", serveFile(\"./dist/ui/index.html\"));\n\nBun.serve({ port: 3000, fetch: (req) => app.handle(req) });\n```\n\n### Router\n\n```ts\ncreateRouter({ prefix?: \"/api\" })\n  .use(mw)                                   // global middleware\n  .get(\"/users/:id\", handler)                // also post/put/patch/delete/options/head/all\n  .get(\"/users/:id\", mw1, mw2, finalHandler) // handler chain — `undefined` = fall through\n  .mount(\"/vex\", subRouter)                  // strip prefix, dispatch to inner router\n  .onError(handler)                          // catchall\n  .onError((err) => err instanceof HttpError && err.status === 404, render404);\n```\n\nPath syntax is whatever [URLPattern](https://developer.mozilla.org/en-US/docs/Web/API/URLPattern) supports: `:param`, `*`, regex groups. Captures land in `ctx.params`.\n\n### Context\n\nEvery middleware and handler receives a `RequestCtx`:\n\n```ts\ninterface RequestCtx {\n  req: Request;\n  url: URL;\n  params: Record<string, string>;\n  state: Record<string, unknown>;   // scratchpad: request id, parsed body, logger bindings\n  signal: AbortSignal;\n  user?: VexUser | null;             // set by auth middleware\n  session?: Session;                 // set by sessions middleware\n  span?: Span;                       // set by tracer middleware\n}\n```\n\n### HttpError\n\n```ts\nthrow HttpError.badRequest(\"Missing id\");\nthrow HttpError.unauthorized();\nthrow HttpError.notFound();\nthrow HttpError.tooManyRequests(30);           // Retry-After: 30\nthrow new HttpError(418, \"I'm a teapot\", { body: { code: \"TEAPOT\" } });\n```\n\nThe router catches any thrown error, renders `HttpError` via `.toResponse()`, wraps everything else as a 500.\n\n### Vex dispatcher\n\n```ts\nvexHandler(vex, opts?)   // a Router; mount anywhere\n```\n\nExposes, relative to wherever it's mounted:\n\n```\nPOST /query              { name, args? }\nPOST /mutate             { name, args? }\nGET  /subscribe          ?name=...&args=... (SSE)\nALL  /webhook/*          user-defined webhooks\n```\n\n### Middleware catalog\n\n| Middleware    | What it does |\n|---------------|--------------|\n| `errorBoundary({ devStackTraces, logger })` | Catches thrown errors, renders `HttpError`, wraps everything else as 500. |\n| `requestId({ header, generator })`          | Read or mint `X-Request-Id`; stash on `ctx.state.requestId`; echo on response. |\n| `accessLog({ logger, skipPaths })`          | One line per request: `GET /path -> 200 (12ms)`. |\n| `cors({ origin, credentials, allowedHeaders, maxAge })` | Fetch-standard CORS. Downgrades `*` to request origin when `credentials: true`. |\n| `bearerAuth({ token, publicPaths, loginPage })` | Single-token HTTP gate: `Authorization: Bearer` OR session cookie. Built-in `/login` + `/logout`; per-IP rate limit on failures. |\n| `bodyParser({ limit, json, urlencoded, text })` | Parse request body into `ctx.state.body`. |\n| `rateLimit({ requests, window, key, cost, limiter })` | Token-bucket limiting: 429 + `Retry-After`, full `X-RateLimit-*` on every response. Works as `use()` middleware or as a route-chain gate. |\n| `sessions({ storage, cookieName, maxAge, rolling })` | Server-side session store on any `StorageAdapter` (SQLite/custom). `ctx.session.get/set/delete/destroy`. |\n\n### Static serving — namespace owners, not fallbacks\n\n`serveDir` and `serveFile` are plain route handlers. Give each URL\nnamespace exactly one owner and every request has one deterministic\npath through the router — no Accept sniffing, no extension heuristics,\nno 404-then-retry:\n\n```ts\nimport { serveDir, serveFile } from \"vex-core/http\";\n\napp\n  // Asset namespace: bytes or 404 — a missing script can never\n  // receive the HTML shell.\n  .get(\"/assets/*\", serveDir({\n    dir: \"./dist/ui/assets\",\n    stripPrefix: \"/assets\",\n    cacheControl: \"public, max-age=31536000, immutable\",\n  }))\n  .get(\"/favicon.ico\", serveFile(\"./dist/ui/favicon.ico\"))\n  // Document namespace: the terminal GET route owns every\n  // client-routed URL — dotted or not — and serves the app shell.\n  .get(\"/*\", serveFile(\"./dist/ui/index.html\"));\n```\n\nBoth resolve paths inside their directory (traversal-guarded), infer\ncontent type by extension, support HEAD, and default to `no-cache`.\n\n### Sessions\n\nBacked by any vex-core `StorageAdapter`. One row per session, cookie holds the id, data is a JSON blob with sliding expiry.\n\n```ts\nimport { sessions } from \"vex-core/http\";\nimport { sqliteAdapter } from \"vex-core\";\n\nconst store = sqliteAdapter(\"./sessions.db\");\n\napp.use(sessions({ storage: store, maxAge: 86400 * 7 }))\n   .post(\"/login\", async (ctx) => {\n     const { email } = (await ctx.req.json()) as { email: string };\n     ctx.session?.set(\"email\", email);\n     return new Response(\"ok\");\n   })\n   .get(\"/me\", (ctx) => Response.json({ email: ctx.session?.get(\"email\") ?? null }))\n   .post(\"/logout\", async (ctx) => {\n     await ctx.session?.destroy();\n     return new Response(\"ok\");\n   });\n```\n\n## Rate limiting\n\n`RateLimiter` is the core primitive — a token bucket (capacity `requests`, refilling at `requests / window` per second), keyed by caller identity, with cost-weighted consumption for expensive operations. One instance = one scope + one budget; share the instance to share the budget.\n\n```ts\nimport { RateLimiter, RateLimitExceededError } from \"vex-core\";\n\nconst runs = new RateLimiter({\n  limit: { requests: 30, window: 60 },\n  scope: \"agent-runs\",\n  onDecision: (d) => { if (!d.allowed) log.warn(\"rate limited\", d); },\n});\n\nruns.tryConsume(userId);        // → { allowed, retryAfter, remaining, … }\nruns.consume(userId, 5);        // throws RateLimitExceededError on reject\nruns.peek(userId);              // report without spending budget\nruns.stats();                   // { allowed, rejected, keys }\n```\n\nState is in-memory and bounded (`prune()` + a `maxKeys` cap with LRU-ish eviction). Per-key limits bound per-key abuse, not aggregate volume — cap aggregate volume with a second limiter on a constant key.\n\nOver HTTP, the `rateLimit` middleware wraps the same primitive:\n\n```ts\nimport { rateLimit } from \"vex-core/http\";\n\napp.use(rateLimit({ requests: 100, window: 60 }));            // per-IP, all routes\n\nconst shared = new RateLimiter({ limit: { requests: 10, window: 60 }, scope: \"expensive\" });\napp.get(\"/report\", rateLimit({ limiter: shared, cost: () => 5 }), reportHandler)\n   .get(\"/export\", rateLimit({ limiter: shared, cost: () => 10 }), exportHandler);\n```\n\nEvery response carries `X-RateLimit-Limit` / `-Remaining` / `-Reset`; rejections return the 429 body `{ error: \"too_many_requests\", retryAfter, resource }` and record an errored `rateLimit` child span when tracing is composed upstream.\n\n## React client\n\n```tsx\nimport { VexProvider, useQuery, useMutation } from \"vex-core/client\";\n\nfunction App() {\n  return (\n    <VexProvider basePath=\"/vex\">\n      <Todos />\n    </VexProvider>\n  );\n}\n\nfunction Todos() {\n  const { data: todos, isLoading } = useQuery(\"todos.list\");\n  const { mutate: addTodo } = useMutation(\"todos.add\");\n  // ...\n}\n```\n\nSSE-backed — data updates automatically on mutations that touch the underlying tables.\n\n## Observability\n\nEvery engine operation is a span. Pass a `tracer` to `Vex.create` to capture queries, mutations, handler timings, tables touched, invalidated subscriptions, and errors. See `src/core/tracer.ts` for the `Tracer` and `Span` interfaces.\n\nA tracer can make one head-sampling decision for each root. Returning `false` prevents the entire trace from recording and skips result-size instrumentation for one-shot queries:\n\n```ts\nconst tracer: Tracer = {\n  shouldRecord: ({ traceId }) => sample(traceId),\n  onSpan: (span) => persist(span),\n};\n```\n\nCore metadata describes query and write structure without recording filter values, row values, handler arguments, or results. Core emits spans to the tracer but does not persist them automatically; it reserves the internal `_spans` table for apps that choose SQLite persistence. Retention remains app-specific. For a long-running server that writes `_spans`, register bounded cleanup:\n\n```ts\napi.registerJob(\"spanRetention\", {\n  schedule: \"every 1h\",\n  async handler(ctx) {\n    const cutoff = Date.now() - 7 * 24 * 60 * 60 * 1000; // 7 days\n    await ctx.db.sql(\n      `DELETE FROM _spans WHERE _id IN (\n         SELECT _id FROM _spans WHERE startTime < ? LIMIT 1000\n       )`,\n      cutoff,\n    );\n  },\n});\n```\n\nAge retention alone is not a hard volume bound. Production sinks should also cap queued spans, individual span size, and total retained rows or bytes.\n\n## Exports\n\n| Entry | Contents |\n|-------|----------|\n| `vex-core` | `Vex`, `sqliteAdapter`, `id`, core types, tracer, `RateLimiter` |\n| `vex-core/framework` | `table`, `query`, `mutation`, `webhook`, `job`, `middleware`, `scanDirectory` |\n| `vex-core/http` | `Router`, `createRouter`, `HttpError`, `compose`, `vexHandler`, static handlers (`serveDir`, `serveFile`), plus middleware (`cors`, `bearerAuth`, `bodyParser`, `accessLog`, `requestId`, `rateLimit`, `errorBoundary`, `sessions`) |\n| `vex-core/client` | `VexProvider`, `useQuery`, `useMutation` |\n| `vex-core/adapters/sqlite` | `sqliteAdapter` |\n\n## License\n\nMIT\n","readmeFilename":"README.md"}