{"_id":"@bobbyfidz/crdt","_rev":"2-8fab0e57d84ccb83d4d49da154839c1a","name":"@bobbyfidz/crdt","dist-tags":{"latest":"0.2.1"},"versions":{"0.2.0":{"name":"@bobbyfidz/crdt","version":"0.2.0","_id":"@bobbyfidz/crdt@0.2.0","maintainers":[{"name":"robertf224","email":"robertf224@gmail.com"}],"dist":{"shasum":"6a10afa5c8f8d0077c47e648a65b366505a59af3","tarball":"https://registry.npmjs.org/@bobbyfidz/crdt/-/crdt-0.2.0.tgz","fileCount":39,"integrity":"sha512-AyY4S2V7zuXjLktXkzc+ydfpjG0XXJygOYIybBP9iTlhfoyKCzwWEVc+IggWhxWUAfpFlm8x7ny31m24wKwE4w==","signatures":[{"sig":"MEQCIB/lFyEPNdPegLx2oNsK/jQNsUayHYyPDNtGnxRi09ndAiBSQ2GKlrhkG0ONMPTU3S+I/mAWayCd3uS+YuY86M/Obw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49228},"type":"module","_from":"file:bobbyfidz-crdt-0.2.0.tgz","exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"}},"scripts":{"lint":"eslint","test":"vitest run","build":"tsc"},"_npmUser":{"name":"robertf224","email":"robertf224@gmail.com"},"_resolved":"/tmp/6287838f35c499e0863a27169c5de715/bobbyfidz-crdt-0.2.0.tgz","_integrity":"sha512-AyY4S2V7zuXjLktXkzc+ydfpjG0XXJygOYIybBP9iTlhfoyKCzwWEVc+IggWhxWUAfpFlm8x7ny31m24wKwE4w==","_npmVersion":"10.8.2","description":"@bobbyfidz/compact-crdt","directories":{},"_nodeVersion":"20.18.2","dependencies":{"@bobbyfidz/hlc":"0.2.0","@bobbyfidz/panic":"0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.21.0","vitest":"^3.1.1","typescript":"~5.8.2","@bobbyfidz/universal-build-config":"0.1.1"},"_npmOperationalInternal":{"tmp":"tmp/crdt_0.2.0_1755053594254_0.4116768584970383","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@bobbyfidz/crdt","version":"0.2.1","type":"module","exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"}},"dependencies":{"@bobbyfidz/hlc":"0.2.1","@bobbyfidz/panic":"0.1.0"},"devDependencies":{"eslint":"^9.21.0","typescript":"~5.8.2","vitest":"^3.1.1","@bobbyfidz/universal-build-config":"0.1.1"},"scripts":{"build":"tsc","lint":"eslint","test":"vitest run"},"_id":"@bobbyfidz/crdt@0.2.1","description":"@bobbyfidz/compact-crdt","_integrity":"sha512-idRILDS8w5O1XKFEyEpTEIU6BRLriJ02Y2uGzaAW3lEnG0s4sk58t2quLcQSFpAvLk5fXj1dpXW5dbuH95UWLQ==","_resolved":"/tmp/6bf7b587d9a621b73b54a5a72d19ffb0/bobbyfidz-crdt-0.2.1.tgz","_from":"file:bobbyfidz-crdt-0.2.1.tgz","_nodeVersion":"20.18.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-idRILDS8w5O1XKFEyEpTEIU6BRLriJ02Y2uGzaAW3lEnG0s4sk58t2quLcQSFpAvLk5fXj1dpXW5dbuH95UWLQ==","shasum":"5bd70fdbcab0976328d9d46c84fc44257fea2349","tarball":"https://registry.npmjs.org/@bobbyfidz/crdt/-/crdt-0.2.1.tgz","fileCount":39,"unpackedSize":49239,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCjyXqewhT3n87U7TlhvcuFqw242HMIHIPZraB8+OEYcwIgeZAKRx4cQBtWqDhDZTGCVyO/DtdAk5pQlzBbrspyn6o="}]},"_npmUser":{"name":"robertf224","email":"robertf224@gmail.com"},"directories":{},"maintainers":[{"name":"robertf224","email":"robertf224@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/crdt_0.2.1_1755140807708_0.8170322695467569"},"_hasShrinkwrap":false}},"time":{"created":"2025-08-13T02:53:14.174Z","modified":"2025-08-14T03:06:48.094Z","0.2.0":"2025-08-13T02:53:14.439Z","0.2.1":"2025-08-14T03:06:47.884Z"},"description":"@bobbyfidz/compact-crdt","maintainers":[{"name":"robertf224","email":"robertf224@gmail.com"}],"readme":"@bobbyfidz/compact-crdt\n\nState-based CRDTs with diffs inspired by [Ditto](https://www.ditto.com/blog/an-inside-look-at-dittos-delta-state-crdts).\n\n```\nimport { Hlc } from \"@bobbyfidz/hlc\";\nimport { Map } from \"@bobbyfidz/crdt\";\n\nconst hlcA = Hlc.create(\"A\");\nconst docA = Map.create();\nsetAtPath(docA, [\"user\", \"name\"], \"Alice\", Hlc.tick(hlcA));\n\nconst hlcB = Hlc.create(\"B\");\nconst docB = Map.create(\"B\", Hlc.tick(hlcB));\nconst diffFromA = diff(docA, Map.getVersionVector(docB));\napplyDiff(docB, diffFromA);\n```\n","readmeFilename":"README.md"}