@mr-aftab-ahmad-khan/cacheflow
v0.1.0
Published
cacheflow — Auto cache invalidation graph: track tag ↔ dependency edges (e.g. Mongo doc ids) and fan out invalidations when data changes.
Downloads
67
Maintainers
Readme
cacheflow
Topics: cache · cacheflow · invalidation · mern-packages · merndev · mongodb · nodejs · npm-pm · observability · redis · typescript
Auto cache invalidation engine — declare reverse dependencies between cache tags and data keys; when models change, you receive the exact tags to purge (Redis, CDN, in-memory, etc.).
Install
npm install @mr-aftab-ahmad-khan/cacheflowExample
import { cacheflow } from "@mr-aftab-ahmad-khan/cacheflow";
const graph = cacheflow();
graph.track("GET /v1/orgs/:id/dashboard", [`Org:${orgId}`, `User:${ownerId}`]);
graph.track("GET /v1/posts/:slug", [`Post:${postId}`, `Org:${orgId}`]);
async function onOrgWrite(orgId: string, redis: { del: (k: string) => Promise<unknown> }) {
const bust = graph.invalidateDeps(`Org:${orgId}`);
await Promise.all([...bust].map((tag) => redis.del(tag)));
}License
MIT
