{"_id":"@accidentally-awesome-labs/spatula-db","_rev":"2-a2b6d3a990a6a6150928d9ecca144e93","name":"@accidentally-awesome-labs/spatula-db","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@accidentally-awesome-labs/spatula-db","version":"0.1.0","license":"MIT","_id":"@accidentally-awesome-labs/spatula-db@0.1.0","maintainers":[{"name":"salarsayyad","email":"salar.sayyad@gmail.com"}],"homepage":"https://github.com/accidentally-awesome-labs/spatula#readme","bugs":{"url":"https://github.com/accidentally-awesome-labs/spatula/issues"},"dist":{"shasum":"5a28e68329d62844f1df2462328daad89a8f452a","tarball":"https://registry.npmjs.org/@accidentally-awesome-labs/spatula-db/-/spatula-db-0.1.0.tgz","fileCount":164,"integrity":"sha512-Mn6uGdP6LfaHUWdRxEIRXMzEuc2MKYqC1q7CAmW83PSwJg1MwW2uJwpl29169vyaR2Jfa0DcXk4+5bkndt0nCg==","signatures":[{"sig":"MEUCIQCuNfeWkKLaSfJ7aJXGZ9XZMiilwLGpJPvcDzS2IXDUogIgFRMJPdiwdV0Z3Gj6hMf0ikxcZpaewPjjXb5n8Iy/Sf4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@accidentally-awesome-labs%2fspatula-db@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":813891},"main":"./dist/index.js","type":"module","_from":"file:/home/runner/work/_temp/spatula-npm-packs/accidentally-awesome-labs-spatula-db-0.1.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"eslint src/","test":"vitest run --passWithNoTests","build":"tsc","clean":"rm -rf dist .turbo *.tsbuildinfo","lint:fix":"eslint src/ --fix","db:migrate":"node --env-file-if-exists=../../.env --import tsx src/run-migrate.ts","db:generate":"drizzle-kit generate","db:generate:sqlite":"drizzle-kit generate --config drizzle.config.sqlite.ts"},"_npmUser":{"name":"salarsayyad","email":"salar.sayyad@gmail.com"},"_resolved":"/home/runner/work/_temp/spatula-npm-packs/accidentally-awesome-labs-spatula-db-0.1.0.tgz","_integrity":"sha512-Mn6uGdP6LfaHUWdRxEIRXMzEuc2MKYqC1q7CAmW83PSwJg1MwW2uJwpl29169vyaR2Jfa0DcXk4+5bkndt0nCg==","repository":{"url":"git+https://github.com/accidentally-awesome-labs/spatula.git","type":"git","directory":"packages/db"},"_npmVersion":"12.0.1","description":"Internal Spatula PostgreSQL + SQLite database layer — NO TS-API compat guarantee. Public SDK is @accidentally-awesome-labs/spatula-client. See docs/compat-policy.md.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"pg":"^8.20.0","ioredis":"^5.10.0","drizzle-orm":"^0.45.2","better-sqlite3":"^12.8.0","@accidentally-awesome-labs/spatula-core":"0.1.0","@accidentally-awesome-labs/spatula-shared":"0.1.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","vitest":"^3.2.6","@types/pg":"^8.18.0","typescript":"^5.7.0","drizzle-kit":"^0.31.10","@types/better-sqlite3":"^7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/spatula-db_0.1.0_1784125175227_0.4701767670388488","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@accidentally-awesome-labs/spatula-db","version":"0.1.1","description":"Internal Spatula PostgreSQL + SQLite database layer — NO TS-API compat guarantee. Public SDK is @accidentally-awesome-labs/spatula-client. See docs/compat-policy.md.","license":"MIT","repository":{"type":"git","url":"git+https://github.com/accidentally-awesome-labs/spatula.git","directory":"packages/db"},"homepage":"https://github.com/accidentally-awesome-labs/spatula#readme","bugs":{"url":"https://github.com/accidentally-awesome-labs/spatula/issues"},"publishConfig":{"access":"public","provenance":true},"type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"engines":{"node":">=22"},"dependencies":{"better-sqlite3":"^12.8.0","drizzle-orm":"^0.45.2","ioredis":"^5.10.0","pg":"^8.20.0","@accidentally-awesome-labs/spatula-core":"0.1.1","@accidentally-awesome-labs/spatula-shared":"0.1.1"},"devDependencies":{"@types/better-sqlite3":"^7.6.13","@types/pg":"^8.18.0","drizzle-kit":"^0.31.10","tsx":"^4.19.0","typescript":"^5.7.0","vitest":"^3.2.6"},"scripts":{"build":"tsc","test":"vitest run --passWithNoTests","lint":"eslint src/","lint:fix":"eslint src/ --fix","clean":"rm -rf dist .turbo *.tsbuildinfo","db:generate":"drizzle-kit generate","db:generate:sqlite":"drizzle-kit generate --config drizzle.config.sqlite.ts","db:migrate":"node --env-file-if-exists=../../.env --import tsx src/run-migrate.ts"},"_id":"@accidentally-awesome-labs/spatula-db@0.1.1","_integrity":"sha512-YmMJWM8nkPUcqwm91GXQ1uzs34z1wVLfbqHO0kVIFXhssMQCbALYcXb0LZOa+evUL51pHKWtuuu63o5XH5imXg==","_resolved":"/home/runner/work/_temp/spatula-npm-packs/accidentally-awesome-labs-spatula-db-0.1.1.tgz","_from":"file:/home/runner/work/_temp/spatula-npm-packs/accidentally-awesome-labs-spatula-db-0.1.1.tgz","_nodeVersion":"22.23.1","_npmVersion":"12.0.1","dist":{"integrity":"sha512-YmMJWM8nkPUcqwm91GXQ1uzs34z1wVLfbqHO0kVIFXhssMQCbALYcXb0LZOa+evUL51pHKWtuuu63o5XH5imXg==","shasum":"8c79218e4a54da0b841b7a4ed87114766fbb0a41","tarball":"https://registry.npmjs.org/@accidentally-awesome-labs/spatula-db/-/spatula-db-0.1.1.tgz","fileCount":164,"unpackedSize":816272,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@accidentally-awesome-labs%2fspatula-db@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDJYdDtt/SO4mUAEVmowM+JEczerPBRmpbToVEui58RNAiBRfE6aaYAkegNNK5WRRST4Y0gUcxjF3haRzjjhFpVmzA=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac3a869b-ee5d-414e-bbb9-7f8513a2e241"}},"directories":{},"maintainers":[{"name":"salarsayyad","email":"salar.sayyad@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/spatula-db_0.1.1_1784144328876_0.3703955585456089"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-15T14:19:35.041Z","modified":"2026-07-15T19:38:49.289Z","0.1.0":"2026-07-15T14:19:35.391Z","0.1.1":"2026-07-15T19:38:49.033Z"},"bugs":{"url":"https://github.com/accidentally-awesome-labs/spatula/issues"},"license":"MIT","homepage":"https://github.com/accidentally-awesome-labs/spatula#readme","repository":{"type":"git","url":"git+https://github.com/accidentally-awesome-labs/spatula.git","directory":"packages/db"},"description":"Internal Spatula PostgreSQL + SQLite database layer — NO TS-API compat guarantee. Public SDK is @accidentally-awesome-labs/spatula-client. See docs/compat-policy.md.","maintainers":[{"name":"salarsayyad","email":"salar.sayyad@gmail.com"}],"readme":"# @accidentally-awesome-labs/spatula-db\n\n> **NO COMPAT GUARANTEE AT TS-API LEVEL.** This is an internal Spatula implementation package. Breaking changes to its TypeScript surface may land in any **MINOR** release. External consumers should not import it directly. The public packages with semver-stable TypeScript surfaces are: `@accidentally-awesome-labs/spatula-client`, `@accidentally-awesome-labs/spatula-core-types`, and `@accidentally-awesome-labs/spatula`. See [`docs/compat-policy.md`](https://github.com/accidentally-awesome-labs/spatula/blob/main/docs/compat-policy.md) for the full matrix.\n\n## Purpose\n\nDrizzle ORM schemas, repositories, and migrations for Spatula. Backs both PostgreSQL (production, `__drizzle_migrations_oss`) and SQLite (local-mode projects). All tables tenant-scoped from day one.\n\n## Stability\n\n**No stable TS-API.** Use `@accidentally-awesome-labs/spatula-client` for programmatic API access. Schema migrations follow expand-contract policy per [`docs/runbooks/upgrade.md`](https://github.com/accidentally-awesome-labs/spatula/blob/main/docs/runbooks/upgrade.md); the SQL surface is forward-only post-v1 (no migration downgrade).\n\n## Compatibility\n\nThe TypeScript API is internal and may change between minor versions. Public database upgrade guarantees live in `docs/runbooks/upgrade.md`.\n","readmeFilename":"README.md"}