{"_id":"@anabranch/cache","_rev":"3-fee90f0dd5c49cdf4a6f60728934a997","name":"@anabranch/cache","dist-tags":{"latest":"0.1.3"},"versions":{"0.1.0":{"name":"@anabranch/cache","version":"0.1.0","license":"MIT","_id":"@anabranch/cache@0.1.0","maintainers":[{"name":"frodikarlsson","email":"frodikarlsson@gmail.com"}],"homepage":"https://github.com/frodi-karlsson/anabranch#readme","bugs":{"url":"https://github.com/frodi-karlsson/anabranch.git"},"dist":{"shasum":"26d4c7faccc4f2609f332d0aa6c93a76337b4aeb","tarball":"https://registry.npmjs.org/@anabranch/cache/-/cache-0.1.0.tgz","fileCount":22,"integrity":"sha512-yf1Zk/O7+WLGqZ5pHo/LiANingU4Sh2lE7GMeU3vyECezFhxj846VOOtH7n697gDg5VG/6D3VdJzhtIBxgiLlQ==","signatures":[{"sig":"MEYCIQCkSjlR5zqv89VhoZhM4dDiqVHVXE9DwkoKQ1RFZ6Oi+AIhAPZD5n1KF5IHl1xkKxHHGi5UNO5cA3NyXIiaXE7svY6C","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21125},"module":"./esm/index.js","exports":{".":{"import":"./esm/index.js"}},"gitHead":"ed42844aafdb25843ce07d59136c491415f60ec2","scripts":{},"_npmUser":{"name":"frodikarlsson","email":"frodikarlsson@gmail.com"},"repository":{"url":"git+https://github.com/frodi-karlsson/anabranch.git","type":"git"},"_npmVersion":"11.9.0","description":"Cache primitives with Task semantics for composable error handling","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"anabranch":"^0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cache_0.1.0_1773750051726_0.42727509936132035","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@anabranch/cache","version":"0.1.2","license":"MIT","_id":"@anabranch/cache@0.1.2","maintainers":[{"name":"frodikarlsson","email":"frodikarlsson@gmail.com"}],"homepage":"https://github.com/frodi-karlsson/anabranch#readme","bugs":{"url":"https://github.com/frodi-karlsson/anabranch.git"},"dist":{"shasum":"1b70b6e3ed8178f9fca6eccbe070b6d7cfb5488e","tarball":"https://registry.npmjs.org/@anabranch/cache/-/cache-0.1.2.tgz","fileCount":22,"integrity":"sha512-mlFBELxUplwQklYgCdE6RbcAT4IEJGOlUgShJe5+21P9ww1pCQ8PSykIs1pcbg9cm/5G4+AYS6IUyGelZEZ7HQ==","signatures":[{"sig":"MEUCIQCCB8JTw5CmurLubB/bpo+9oY03NWm8VcllFCloEADsuQIgUgHBXrCBKqwIWpi0raihr4Myj6MFk4R4sZEpyVVwCVM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@anabranch%2fcache@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":21178},"module":"./esm/index.js","exports":{".":{"import":"./esm/index.js"}},"gitHead":"e6cffdfe2d99c09b7d7382467d38c459ca44d5ca","scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0eced18d-eb59-44df-a422-ba9b396d3a1b"}},"repository":{"url":"git+https://github.com/frodi-karlsson/anabranch.git","type":"git"},"_npmVersion":"11.11.1","description":"Cache primitives with Task semantics for composable error handling","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"anabranch":"^0"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^24"},"_npmOperationalInternal":{"tmp":"tmp/cache_0.1.2_1773752543929_0.6293526093173365","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@anabranch/cache","version":"0.1.3","description":"Cache primitives with Task semantics for composable error handling","repository":{"type":"git","url":"git+https://github.com/frodi-karlsson/anabranch.git"},"license":"MIT","bugs":{"url":"https://github.com/frodi-karlsson/anabranch/issues"},"module":"./esm/index.js","exports":{".":{"import":"./esm/index.js"}},"scripts":{},"sideEffects":false,"dependencies":{"anabranch":"^0"},"devDependencies":{"@types/node":"^24"},"gitHead":"6fd573e3068a3f60814d0e57a3a7097b16c42381","_id":"@anabranch/cache@0.1.3","homepage":"https://github.com/frodi-karlsson/anabranch#readme","_nodeVersion":"24.18.0","_npmVersion":"11.18.0","dist":{"integrity":"sha512-aTDn3PU7dkAzuzlKLaENL74toeJsQiik6ejqKHu90ED/OmBZlQlNXZ1viEh/1kbLy9KcL310cOiJ3T51X5yTHA==","shasum":"c1fc9c8a18120c0a9af3f261514fec82a70e80d2","tarball":"https://registry.npmjs.org/@anabranch/cache/-/cache-0.1.3.tgz","fileCount":22,"unpackedSize":21181,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@anabranch%2fcache@0.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIG8hGxrBP2a7X4dPhJV1I0by+5X47D3dB3m6v8VmLf6QAiBUZX3MH+rSkwlFXQhpeuu8NodKtG3cJRIqWn3/Jmc3OQ=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0eced18d-eb59-44df-a422-ba9b396d3a1b"}},"directories":{},"maintainers":[{"name":"frodikarlsson","email":"frodikarlsson@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cache_0.1.3_1782955777437_0.31248010578184826"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-17T12:20:51.597Z","modified":"2026-07-02T01:29:37.821Z","0.1.0":"2026-03-17T12:20:51.869Z","0.1.2":"2026-03-17T13:02:24.087Z","0.1.3":"2026-07-02T01:29:37.575Z"},"bugs":{"url":"https://github.com/frodi-karlsson/anabranch/issues"},"license":"MIT","homepage":"https://github.com/frodi-karlsson/anabranch#readme","repository":{"type":"git","url":"git+https://github.com/frodi-karlsson/anabranch.git"},"description":"Cache primitives with Task semantics for composable error handling","maintainers":[{"name":"frodikarlsson","email":"frodikarlsson@gmail.com"}],"readme":"# @anabranch/cache\n\nCache primitives with Task semantics for composable error handling. Supports\nTTL, cache-aside (`getOrSet`), and pluggable backends via the adapter pattern.\n\n## Usage\n\n```ts\nimport { Cache, createInMemory } from '@anabranch/cache'\n\nconst cache = await Cache.connect(createInMemory()).run()\n\n// Basic set/get with TTL\nawait cache.set('session:abc', { userId: 123 }, { ttl: 3600_000 }).run()\nconst session = await cache.get<{ userId: number }>('session:abc').run()\n\n// Cache-aside: compute on miss, store with TTL\nconst user = await cache\n  .getOrSet('user:1', () => fetchUserFromDB(1), { ttl: 60_000 })\n  .run()\n\n// Check existence\nif (await cache.has('session:abc').run()) {\n  console.log('Session exists')\n}\n\n// Delete\nawait cache.delete('session:abc').run()\n```\n\n## Installation\n\n**Deno (JSR)**\n\n```ts\nimport { Cache, createInMemory } from 'jsr:@anabranch/cache'\n```\n\n**Node / Bun (npm)**\n\n```sh\nnpm install @anabranch/cache\n```\n\n## API reference\n\nSee [generated documentation](https://frodi-karlsson.github.io/anabranch/cache)\nfor full API details.\n","readmeFilename":"README.md"}