- BaseKVStorage / BaseEventStorage / BaseDocumentStorage define the API once; implementations provide only raw primitives (client and server share an API) - Drop KV indexes, query planner, unique indexes; document stores take index fields - Escape every char <= '/' so child keys stay contiguous; skip-scan is now simple - Event-sourced documents = event storage + any document store for projections - New folder layout (kv-storage, event-storage, document-storage, utils); tests only in test/ Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017Qxbkp4tA7G5SCWjzWuxmE
38 lines
861 B
JSON
38 lines
861 B
JSON
{
|
|
"name": "potential-storage",
|
|
"version": "0.1.0",
|
|
"description": "Layered TypeScript storage: KV -> Events -> Documents",
|
|
"type": "module",
|
|
"engines": {
|
|
"node": ">=20"
|
|
},
|
|
"main": "./dist/index.js",
|
|
"types": "./dist/index.d.ts",
|
|
"exports": {
|
|
".": {
|
|
"types": "./dist/index.d.ts",
|
|
"import": "./dist/index.js"
|
|
}
|
|
},
|
|
"files": [
|
|
"dist"
|
|
],
|
|
"scripts": {
|
|
"build": "tsc -p tsconfig.build.json",
|
|
"typecheck": "tsc --noEmit",
|
|
"test": "tsc --noEmit && vitest run",
|
|
"test:watch": "vitest",
|
|
"bench": "vitest bench --run",
|
|
"test:only": "vitest run",
|
|
"format": "prettier --write .",
|
|
"format:check": "prettier --check ."
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^22.20.5",
|
|
"fast-check": "^4.10.2",
|
|
"prettier": "^3.9.10",
|
|
"typescript": "^5.9.3",
|
|
"vitest": "^3.2.7"
|
|
}
|
|
}
|