mastercache
Version:
Multi-tier cache module for Node.js. Redis, Upstash, CloudfareKV, File, in-memory and others drivers
215 lines • 6.09 kB
JSON
{
"name": "mastercache",
"type": "module",
"version": "1.0.1-beta.1.1",
"description": "Multi-tier cache module for Node.js. Redis, Upstash, CloudfareKV, File, in-memory and others drivers",
"author": "Timothy Mugo <timothymugo@tausiapp.com>",
"license": "MIT",
"keywords": [
"caching",
"redis",
"in-memory",
"cache",
"multi-tier",
"tiered"
],
"exports": {
".": {
"types": "./build/index.d.ts",
"import": "./build/index.js",
"require": "./build/index.cjs"
},
"./drivers/redis": {
"types": "./build/src/drivers/redis.d.ts",
"import": "./build/src/drivers/redis.js",
"require": "./build/src/drivers/redis.cjs"
},
"./drivers/memory": {
"types": "./build/src/drivers/memory.d.ts",
"import": "./build/src/drivers/memory.js",
"require": "./build/src/drivers/memory.cjs"
},
"./drivers/file": {
"types": "./build/src/drivers/file/file.d.ts",
"import": "./build/src/drivers/file/file.js",
"require": "./build/src/drivers/file/file.cjs"
},
"./drivers/dynamodb": {
"types": "./build/src/drivers/dynamodb.d.ts",
"import": "./build/src/drivers/dynamodb.js",
"require": "./build/src/drivers/dynamodb.cjs"
},
"./drivers/base_driver": {
"types": "./build/src/drivers/base_driver.d.ts",
"import": "./build/src/drivers/base_driver.js",
"require": "./build/src/drivers/base_driver.cjs"
},
"./drivers/database": {
"types": "./build/src/drivers/database/database.d.ts",
"import": "./build/src/drivers/database/database.js",
"require": "./build/src/drivers/database/database.cjs"
},
"./drivers/knex": {
"types": "./build/src/drivers/database/adapters/knex.d.ts",
"import": "./build/src/drivers/database/adapters/knex.js",
"require": "./build/src/drivers/database/adapters/knex.cjs"
},
"./drivers/kysely": {
"types": "./build/src/drivers/database/adapters/kysely.d.ts",
"import": "./build/src/drivers/database/adapters/kysely.js",
"require": "./build/src/drivers/database/adapters/kysely.cjs"
},
"./drivers/orchid": {
"types": "./build/src/drivers/database/adapters/orchid.d.ts",
"import": "./build/src/drivers/database/adapters/orchid.js",
"require": "./build/src/drivers/database/adapters/orchid.cjs"
},
"./types": {
"types": "./build/src/types/main.d.ts",
"import": "./build/src/types/main.js",
"require": "./build/src/types/main.cjs"
},
"./plugins/*": {
"types": "./build/plugins/*.d.ts",
"import": "./build/plugins/*.js",
"require": "./build/plugins/*.cjs"
},
"./test_suite": {
"types": "./build/src/test_suite.d.ts",
"import": "./build/src/test_suite.js",
"require": "./build/src/test_suite.cjs"
}
},
"main": "build/index.js",
"files": [
"build",
"src"
],
"peerDependencies": {
"@aws-sdk/client-dynamodb": "^3.705.0",
"ioredis": "^5.4.1",
"knex": "^3.0.1",
"kysely": "^0.27.4",
"orchid-orm": "^1.38.5"
},
"peerDependenciesMeta": {
"@aws-sdk/client-dynamodb": {
"optional": true
},
"ioredis": {
"optional": true
},
"knex": {
"optional": true
},
"kysely": {
"optional": true
},
"orchid-orm": {
"optional": true
}
},
"dependencies": {
"@boringnode/bus": "^0.7.0",
"@lukeed/ms": "^2.0.2",
"@types/lodash": "^4.17.13",
"async-mutex": "^0.5.0",
"cacheable": "^1.8.5",
"chunkify": "^5.0.0",
"hexoid": "^2.0.0",
"lodash": "^4.17.21",
"lru-cache": "^11.0.2",
"p-timeout": "^6.1.3",
"typescript-log": "^2.0.0"
},
"devDependencies": {
"@aws-sdk/client-dynamodb": "^3.705.0",
"@keyv/redis": "^4.0.2",
"@keyv/tiered": "^2.0.2",
"@types/better-sqlite3": "^7.6.12",
"@types/pg": "^8.11.10",
"better-sqlite3": "^11.6.0",
"cache-manager": "^6.3.0",
"cache-manager-ioredis-yet": "^2.1.2",
"dayjs": "^1.11.13",
"defu": "^6.1.4",
"emittery": "^1.0.3",
"eslint": "^9.16.0",
"ioredis": "^5.4.1",
"keyv": "^5.2.1",
"knex": "^3.1.0",
"kysely": "^0.27.4",
"memfs": "^4.14.1",
"mysql2": "^3.11.5",
"orchid-orm": "^1.38.2",
"p-event": "^6.0.1",
"pg": "^8.13.1",
"pino": "^9.5.0",
"pino-loki": "^2.4.0",
"sqlite3": "^5.1.7",
"vitest": "^2.1.8",
"@mastercache/vitest-config": "1.0.0",
"@mastercache/eslint-config": "0.0.1"
},
"publishConfig": {
"access": "public",
"tag": "latest"
},
"c8": {
"reporter": [
"text",
"html"
],
"exclude": [
"bin",
"tests/**",
"test_helpers/**",
"factories/**"
]
},
"tsup": {
"entry": [
"./index.ts",
"./src/types/main.ts",
"./src/drivers/*.ts",
"./src/drivers/database/database.ts",
"./src/drivers/database/adapters/*.ts",
"./src/drivers/file/file.ts",
"./src/drivers/file/cleaner-worker.js",
"./plugins/*.ts",
"./src/test_suite.ts"
],
"outDir": "./build",
"clean": true,
"format": "esm",
"dts": true,
"target": "esnext"
},
"release-it": {
"git": {
"commitMessage": "chore(release): masterache@${version}",
"tagAnnotation": "release ${version}",
"tagName": "masterache@${version}"
},
"github": {
"release": true,
"releaseName": "masterache@${version}",
"web": true
}
},
"scripts": {
"clean": "del-cli build",
"copy:templates": "copyfiles \"stubs/**/*.stub\" build",
"typecheck": "tsc --noEmit",
"lint": "eslint .",
"lint:fix": "eslint --fix .",
"quick:test": "cross-env NODE_NO_WARNINGS=1 node --enable-source-maps --loader=ts-node/esm bin/test.ts",
"pretest": "pnpm lint",
"test": "c8 pnpm quick:test",
"build": "pnpm clean && tsup-node ",
"postbuild": "pnpm copy:templates",
"release": "pnpm build && pnpm release-it",
"version": "pnpm build",
"checks": "pnpm lint && pnpm typecheck"
}
}