{"_id":"effect-prisma-generator","_rev":"16-3195974f81cfac7903ffb2cd6a2e4db0","name":"effect-prisma-generator","dist-tags":{"latest":"0.10.0"},"versions":{"0.1.0":{"name":"effect-prisma-generator","version":"0.1.0","keywords":["prisma","generator","effect"],"author":{"name":"m9tdev"},"license":"MIT","_id":"effect-prisma-generator@0.1.0","maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"bin":{"effect-prisma-generator":"dist/index.js"},"dist":{"shasum":"3e71eeff5efe9da254c45dec226bdc10341c4bf2","tarball":"https://registry.npmjs.org/effect-prisma-generator/-/effect-prisma-generator-0.1.0.tgz","fileCount":4,"integrity":"sha512-Sq3Q+5WGR3ACyqO/erurckGOThdjW2OJBkdQnMSKi6MG9O5qcqYQzaEbtIwIg7jsGCArvazi+x6NBYFOUbnhBQ==","signatures":[{"sig":"MEUCIQCqbOSICaEzkKtXdYn2vgeQ//zbQfgBxw1nk70lK0jmwgIgYjIwIBnaLZKjhIN4syqxsGXaomTXRXadpUM8SBuiBFY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18261},"main":"dist/index.js","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"m9tdev","email":"mathieupost@gmail.com"},"repository":{"url":"git+https://github.com/m9tdev/effect-prisma-generator.git","type":"git"},"_npmVersion":"11.6.1","description":"Prisma generator for Effect","directories":{},"_nodeVersion":"24.10.0","dependencies":{"typescript":"^5.9.3","@prisma/generator-helper":"^6.19.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^24.10.1","@prisma/client":"6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/effect-prisma-generator_0.1.0_1763564309154_0.8894195234892524","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"effect-prisma-generator","version":"0.2.0","keywords":["prisma","generator","effect"],"author":{"name":"m9tdev"},"license":"MIT","_id":"effect-prisma-generator@0.2.0","maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"bin":{"effect-prisma-generator":"dist/index.js"},"dist":{"shasum":"8e21f4c1625aee169de41d30cd43488f2a580918","tarball":"https://registry.npmjs.org/effect-prisma-generator/-/effect-prisma-generator-0.2.0.tgz","fileCount":4,"integrity":"sha512-ErJRnBn8ymRusPyCkrTVMJQgtcK4fctQ3p67ll82uhu9wvSgKXSY2SRKAnGroxkYV79rEgp1+FKozsOWMIJwvA==","signatures":[{"sig":"MEUCIQCPOahxsrJaSlBnWb2GsxQnh3Y8BP7G0nU+TVxI6CPLcQIgCZLFhNL2O5VKql3V51/W/NdsZ7sXw7wKjm+nAGCi5gc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/effect-prisma-generator@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":20308},"main":"dist/index.js","gitHead":"9fe7a5e6dcc88acadd21e92dd88700dbfd266c68","scripts":{"test":"npm run build && prisma generate --schema=tests/schema.prisma && prisma db push --schema=tests/schema.prisma && vitest run","build":"tsc && chmod +x dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"m9tdev","email":"mathieupost@gmail.com"},"repository":{"url":"git+https://github.com/m9tdev/effect-prisma-generator.git","type":"git"},"_npmVersion":"11.6.2","description":"Prisma generator for Effect","directories":{},"_nodeVersion":"24.11.1","dependencies":{"typescript":"^5.9.3","@prisma/generator-helper":"^6.19.0"},"_hasShrinkwrap":false,"devDependencies":{"effect":"^3.13.4","prisma":"^6.19.0","vitest":"^3.0.7","@types/node":"^24.10.1","@effect/vitest":"^0.27.0","@prisma/client":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/effect-prisma-generator_0.2.0_1763629004343_0.351675744956111","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"effect-prisma-generator","version":"0.2.1","keywords":["prisma","generator","effect"],"author":{"name":"m9tdev"},"license":"MIT","_id":"effect-prisma-generator@0.2.1","maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"bin":{"effect-prisma-generator":"dist/index.js"},"dist":{"shasum":"cc19809e727971b227e45a109fdb1af54153c7db","tarball":"https://registry.npmjs.org/effect-prisma-generator/-/effect-prisma-generator-0.2.1.tgz","fileCount":4,"integrity":"sha512-kqH7960Bn06ny/Peye0QLOzOhKy0hpUuSaCiacgIvnQ10vNIJYkjard4TxPUiepQTQGv3sAJ8BrOJeOQlOSx2A==","signatures":[{"sig":"MEQCIFGD4u6Vbv54uezAjv5I3hm91Ojd0SNfJgyI917Ta8IfAiBJASqsu1n5AcKHKNpxeJUMOyFPINGcuOnZM/UKI8d0JA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/effect-prisma-generator@0.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":17750},"main":"dist/index.js","gitHead":"6dcfbd49eb3082186fc045a82121a71034c878e5","scripts":{"test":"npm run build && prisma generate --schema=tests/schema.prisma && prisma db push --schema=tests/schema.prisma && tsc --noEmit --project tsconfig.test.json && vitest run","build":"tsc && chmod +x dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"m9tdev","email":"mathieupost@gmail.com"},"repository":{"url":"git+https://github.com/m9tdev/effect-prisma-generator.git","type":"git"},"_npmVersion":"11.6.2","description":"Prisma generator for Effect","directories":{},"_nodeVersion":"24.11.1","dependencies":{"typescript":"^5.9.3","@prisma/generator-helper":"^6.19.0"},"_hasShrinkwrap":false,"devDependencies":{"effect":"^3.13.4","prisma":"^6.19.0","vitest":"^3.0.7","@types/node":"^24.10.1","@effect/vitest":"^0.27.0","@prisma/client":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/effect-prisma-generator_0.2.1_1763634414070_0.08261750075803787","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"effect-prisma-generator","version":"0.3.0","keywords":["prisma","generator","effect"],"author":{"name":"m9tdev"},"license":"MIT","_id":"effect-prisma-generator@0.3.0","maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"bin":{"effect-prisma-generator":"dist/index.js"},"dist":{"shasum":"e68682bc9ad953144ce8a6c25699cb01106fbce1","tarball":"https://registry.npmjs.org/effect-prisma-generator/-/effect-prisma-generator-0.3.0.tgz","fileCount":4,"integrity":"sha512-8ofY571Rr2tC0IA8K3o+ogFBer5Fn1dgrh780OkhslAh5OGE8nhRLWHdq4Xkgs5Uaa1O7pvhLDJjaHOsiHWdkw==","signatures":[{"sig":"MEUCIQDEl/VoMpUqiuQPDW8dErrZzkeeOksSxcbdF5Cbuj6ligIgBl8gIZtmDKT/KrH4fRjyr2JSJBYjJoMrMiW5Ge+FWXo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/effect-prisma-generator@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":20714},"main":"dist/index.js","gitHead":"734c4e7e8d0b9c97b6a41b47e1d74c7fb2c06a84","scripts":{"test":"npm run build && prisma generate --schema=tests/schema.prisma && prisma db push --schema=tests/schema.prisma && tsc --noEmit --project tsconfig.test.json && vitest run","build":"tsc && chmod +x dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"m9tdev","email":"mathieupost@gmail.com"},"repository":{"url":"git+https://github.com/m9tdev/effect-prisma-generator.git","type":"git"},"_npmVersion":"11.6.2","description":"Prisma generator for Effect","directories":{},"_nodeVersion":"24.11.1","dependencies":{"typescript":"^5.9.3","@prisma/generator-helper":"^6.19.0"},"_hasShrinkwrap":false,"devDependencies":{"effect":"^3.13.4","prisma":"^6.19.0","vitest":"^3.0.7","@types/node":"^24.10.1","@effect/vitest":"^0.27.0","@prisma/client":"^6.19.0"},"_npmOperationalInternal":{"tmp":"tmp/effect-prisma-generator_0.3.0_1763637677828_0.9755486052938087","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"effect-prisma-generator","version":"0.3.1","keywords":["prisma","generator","effect"],"author":{"name":"m9tdev"},"license":"MIT","_id":"effect-prisma-generator@0.3.1","maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"bin":{"effect-prisma-generator":"dist/index.js"},"dist":{"shasum":"26196c88ffc0675b09c65576c004cfca8510c32a","tarball":"https://registry.npmjs.org/effect-prisma-generator/-/effect-prisma-generator-0.3.1.tgz","fileCount":4,"integrity":"sha512-At4aLgjnolR4mI+VH4zh88qeJuYp7JBVPUKeYAbYbX9luXKdnL9DOH+an9ctb4S29E6elZA/uHGhaSjaszVsdg==","signatures":[{"sig":"MEYCIQDHDNiMjEdR6aS7CqhwbJ4kOyImaIS072YNKWMDn0iiHwIhAPcMFpreeO2MNxJNsEGvuEo8JofmamkIWcCHUftbBc2c","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/effect-prisma-generator@0.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":20582},"main":"dist/index.js","gitHead":"2cd6411d4aae57d0f8b9bd30781ac76dbbde9aaf","scripts":{"test":"tsx scripts/runTests.ts","build":"tsc && chmod +x dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"m9tdev","email":"mathieupost@gmail.com"},"repository":{"url":"git+https://github.com/m9tdev/effect-prisma-generator.git","type":"git"},"_npmVersion":"11.6.2","description":"Prisma generator for Effect","directories":{},"_nodeVersion":"24.11.1","dependencies":{"typescript":"^5.9.3","@prisma/generator-helper":"^6.19.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","effect":"^3.13.4","prisma":"^6.19.0","vitest":"^3.0.7","@types/node":"^24.10.1","@effect/vitest":"^0.27.0","@prisma/client":"^6.19.0","@effect/platform":"^0.93.3","@effect/platform-node":"^0.101.0"},"_npmOperationalInternal":{"tmp":"tmp/effect-prisma-generator_0.3.1_1763646272454_0.08919326455980969","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"effect-prisma-generator","version":"0.3.2","keywords":["prisma","generator","effect"],"author":{"name":"m9tdev"},"license":"MIT","_id":"effect-prisma-generator@0.3.2","maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"bin":{"effect-prisma-generator":"dist/index.js"},"dist":{"shasum":"898b71c0a38fa550c4d7a1a616ee39f2e83c0445","tarball":"https://registry.npmjs.org/effect-prisma-generator/-/effect-prisma-generator-0.3.2.tgz","fileCount":4,"integrity":"sha512-vz5v+kwjFIfN7TXv4snH+UoWNRwRIznecOrsx2veUAUd4/Cj/IqMhiPE7ydI9wx1lrZ6S/tEMf73qiD45MPpRQ==","signatures":[{"sig":"MEQCIG2joIID/+u+QGbCZgbJhBFFRp6DC0nPIDmAFehQS63lAiBF6FSZMOsjJSXrAvj7k5a/kSHh70N90uvryU9FJH5GUA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/effect-prisma-generator@0.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":20586},"main":"dist/index.js","gitHead":"bd497854eca249c7d556bb3added44ee7373ce2a","scripts":{"test":"tsx scripts/runTests.ts","build":"tsc && chmod +x dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"m9tdev","email":"mathieupost@gmail.com"},"repository":{"url":"git+https://github.com/m9tdev/effect-prisma-generator.git","type":"git"},"_npmVersion":"11.6.2","description":"Prisma generator for Effect","directories":{},"_nodeVersion":"24.11.1","dependencies":{"typescript":"^5.9.3","@prisma/generator-helper":"^6.19.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","effect":"^3.13.4","prisma":"^6.19.0","vitest":"^3.0.7","@types/node":"^24.10.1","@effect/vitest":"^0.27.0","@prisma/client":"^6.19.0","@effect/platform":"^0.93.3","@effect/platform-node":"^0.101.0"},"_npmOperationalInternal":{"tmp":"tmp/effect-prisma-generator_0.3.2_1763646695813_0.1570538814827931","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"effect-prisma-generator","version":"0.3.3","keywords":["prisma","generator","effect"],"author":{"name":"m9tdev"},"license":"MIT","_id":"effect-prisma-generator@0.3.3","maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"bin":{"effect-prisma-generator":"dist/index.js"},"dist":{"shasum":"6b69cad60dc3a0e625957522ffcac3c1e374e44d","tarball":"https://registry.npmjs.org/effect-prisma-generator/-/effect-prisma-generator-0.3.3.tgz","fileCount":4,"integrity":"sha512-HDPfmTTwOvOk9tUU+E9eVBtTklxB8N54+QwhYCdQSzx5pWyQ71sGgHGlJAEtDzTRJnhghOwA3ODcO5qBgiFQJQ==","signatures":[{"sig":"MEQCIA13u+61luYuTt1ieG6KtB9K1GTfFvv7WmFR0JrG/fgHAiAYc5+VFktfW9stGHnZNNd8IOD2fCyEp5Zkg63xYmAq8g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/effect-prisma-generator@0.3.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":20570},"main":"dist/index.js","gitHead":"b9f9f173687665d4e06984fbd8028f794bc7b877","scripts":{"test":"tsx scripts/runTests.ts","build":"tsc && chmod +x dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"m9tdev","email":"mathieupost@gmail.com"},"repository":{"url":"git+https://github.com/m9tdev/effect-prisma-generator.git","type":"git"},"_npmVersion":"11.6.2","description":"Prisma generator for Effect","directories":{},"_nodeVersion":"24.11.1","dependencies":{"typescript":"^5.9.3","@prisma/generator-helper":"^6.19.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","effect":"^3.13.4","prisma":"^6.19.0","vitest":"^3.0.7","@types/node":"^24.10.1","@effect/vitest":"^0.27.0","@prisma/client":"^6.19.0","@effect/platform":"^0.93.3","@effect/platform-node":"^0.101.0"},"_npmOperationalInternal":{"tmp":"tmp/effect-prisma-generator_0.3.3_1763649813028_0.025040482076282622","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"effect-prisma-generator","version":"0.4.0","keywords":["prisma","generator","effect"],"author":{"name":"m9tdev"},"license":"MIT","_id":"effect-prisma-generator@0.4.0","maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"bin":{"effect-prisma-generator":"dist/index.js"},"dist":{"shasum":"578181030ac38a0618c44a3a4f3dedf7c81e5575","tarball":"https://registry.npmjs.org/effect-prisma-generator/-/effect-prisma-generator-0.4.0.tgz","fileCount":4,"integrity":"sha512-Rf/4g4ylf+20/2gWG3pSBF9p69HPv45/+Ir2DqcdvIQEohEk2wKJl2hD693P8t5RyunT2hvG8kAs9BmdBzDz8w==","signatures":[{"sig":"MEUCIQDPw1Ih2eeGdJqL/IXyP3D2/kZWC68v01iqNNKNM/vpggIgYcVmU08MGVYyk7+9Hjldj8ka7C0b9jIoL9VE4bLlVPE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/effect-prisma-generator@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":30656},"main":"dist/index.js","gitHead":"78e8628d259d3c0ff9dae4129a7540dc6435e8de","scripts":{"test":"tsx scripts/runTests.ts","build":"tsc && chmod +x dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"m9tdev","email":"mathieupost@gmail.com"},"repository":{"url":"git+https://github.com/m9tdev/effect-prisma-generator.git","type":"git"},"_npmVersion":"11.6.2","description":"Prisma generator for Effect","directories":{},"_nodeVersion":"24.11.1","dependencies":{"typescript":"^5.9.3","@prisma/generator-helper":"^6.19.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","effect":"^3.13.4","prisma":"^6.19.0","vitest":"^3.0.7","@types/node":"^24.10.1","@effect/vitest":"^0.27.0","@prisma/client":"^6.19.0","@effect/platform":"^0.93.3","@effect/platform-node":"^0.101.0"},"_npmOperationalInternal":{"tmp":"tmp/effect-prisma-generator_0.4.0_1763653099829_0.551901900300448","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"effect-prisma-generator","version":"0.5.0","keywords":["prisma","generator","effect"],"author":{"name":"m9tdev"},"license":"MIT","_id":"effect-prisma-generator@0.5.0","maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"bin":{"effect-prisma-generator":"dist/index.js"},"dist":{"shasum":"5ce3b0f1649484823bb4ae13e6085f932357df54","tarball":"https://registry.npmjs.org/effect-prisma-generator/-/effect-prisma-generator-0.5.0.tgz","fileCount":4,"integrity":"sha512-d3N0vsP39MVKdD7secylUOZ7StqCPRIi58J53K3SJjjWPayUDC6Egv5gkONF1xoXXuyD8TPVz1sucYVlOacoSQ==","signatures":[{"sig":"MEQCIGrjQzyiG0+5SyYG5fVI1QnpcSQ2bbefvnB+py+c0N+UAiAJin8bud4c8LpfbAm1wL6E06RaLqLnaVvK8t4EoIM5cA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/effect-prisma-generator@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":32849},"main":"dist/index.js","gitHead":"6394180d00f14e0d7119cbe78f7e51cc4835592d","scripts":{"test":"tsx scripts/runTests.ts","build":"tsc && chmod +x dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"m9tdev","email":"mathieupost@gmail.com"},"repository":{"url":"git+https://github.com/m9tdev/effect-prisma-generator.git","type":"git"},"_npmVersion":"11.6.2","description":"Prisma generator for Effect","directories":{},"_nodeVersion":"24.11.1","dependencies":{"@prisma/generator-helper":"^7.0.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","effect":"^3.19.8","eslint":"^9.39.1","prisma":"^7.0.1","vitest":"^3.0.7","@eslint/js":"^9.39.1","typescript":"^5.9.3","@types/node":"^24.10.1","@effect/vitest":"^0.27.0","@prisma/client":"^7.0.1","@effect/platform":"^0.93.5","typescript-eslint":"^8.48.0","@effect/platform-node":"^0.102.0","@prisma/adapter-better-sqlite3":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/effect-prisma-generator_0.5.0_1764341507767_0.3233354838689253","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"effect-prisma-generator","version":"0.6.0","keywords":["prisma","generator","effect"],"author":{"name":"m9tdev"},"license":"MIT","_id":"effect-prisma-generator@0.6.0","maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"bin":{"effect-prisma-generator":"dist/index.js"},"dist":{"shasum":"75e828ae02a633c21fb88785ab343b3f8aea6ead","tarball":"https://registry.npmjs.org/effect-prisma-generator/-/effect-prisma-generator-0.6.0.tgz","fileCount":4,"integrity":"sha512-6v3CUd3QZZq0AFHC06/ux9wfrkj4PtGSGcs0MFXk9zI1zD+bD5scPFAkvBVTR/QhWO90Uz3BzjZ0hLXgnGv01w==","signatures":[{"sig":"MEYCIQC5h0F0gZXvR1p3g2ZavJjUo+f9LiUZWin9XCV5W+quDAIhAIUVwHVc92VbmZSdOisQc3OkQVx2uFDK4vd5qITyf/Pv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/effect-prisma-generator@0.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":32584},"main":"dist/index.js","gitHead":"4f10d11c6e48338b5f5bb147d4e07ce49db667f5","scripts":{"test":"tsx scripts/runTests.ts","build":"tsc && chmod +x dist/index.js","format":"prettier --write . && eslint . --fix","prepublishOnly":"npm run build"},"_npmUser":{"name":"m9tdev","email":"mathieupost@gmail.com"},"repository":{"url":"git+https://github.com/m9tdev/effect-prisma-generator.git","type":"git"},"_npmVersion":"11.6.2","description":"Prisma generator for Effect","directories":{},"_nodeVersion":"24.11.1","dependencies":{"@prisma/generator-helper":"^7.0.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","effect":"^3.19.8","eslint":"^9.39.1","prisma":"^7.0.1","vitest":"^3.0.7","prettier":"3.7.1","@eslint/js":"^9.39.1","typescript":"^5.9.3","@types/node":"^24.10.1","@effect/vitest":"^0.27.0","@prisma/client":"^7.0.1","@effect/platform":"^0.93.5","typescript-eslint":"^8.48.0","@effect/platform-node":"^0.102.0","eslint-config-prettier":"^10.1.8","@prisma/adapter-better-sqlite3":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/effect-prisma-generator_0.6.0_1764353736218_0.16550294596552395","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"effect-prisma-generator","version":"0.7.0","keywords":["prisma","generator","effect"],"author":{"name":"m9tdev"},"license":"MIT","_id":"effect-prisma-generator@0.7.0","maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"bin":{"effect-prisma-generator":"dist/index.js"},"dist":{"shasum":"902505b610fd5ced35c71c552e6ae1756122388e","tarball":"https://registry.npmjs.org/effect-prisma-generator/-/effect-prisma-generator-0.7.0.tgz","fileCount":4,"integrity":"sha512-r8vxuJ2blbqfp57Yho1owo8R40/050ifJIItPj/Wa95wpWhKo4WL0DDDxiuXQbvUbiqwA2x7tNa8LKknJtE3PA==","signatures":[{"sig":"MEYCIQDPAZy5U0M7Qi0MXgstSm8wapvb6mBWkTnxS+lPlfNZwgIhAPdxskVQdIZg0XXtaVY5pnoZkaN3kbjrdLDNzS1uy/6q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/effect-prisma-generator@0.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":35581},"main":"dist/index.js","gitHead":"e2c778fbaa71336dabd234256dfea67a944d0db6","scripts":{"test":"tsx scripts/runTests.ts","build":"tsc && chmod +x dist/index.js","format":"prettier --write . && eslint . --fix","prepublishOnly":"npm run build"},"_npmUser":{"name":"m9tdev","email":"mathieupost@gmail.com"},"repository":{"url":"git+https://github.com/m9tdev/effect-prisma-generator.git","type":"git"},"_npmVersion":"11.6.2","description":"Prisma generator for Effect","directories":{},"_nodeVersion":"24.11.1","dependencies":{"@prisma/generator-helper":"^7.0.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","effect":"^3.19.8","eslint":"^9.39.1","prisma":"^7.0.1","vitest":"^3.0.7","prettier":"3.7.1","@eslint/js":"^9.39.1","typescript":"^5.9.3","@types/node":"^24.10.1","@effect/vitest":"^0.27.0","@prisma/client":"^7.0.1","@effect/platform":"^0.93.5","typescript-eslint":"^8.48.0","@effect/platform-node":"^0.102.0","eslint-config-prettier":"^10.1.8","@prisma/adapter-better-sqlite3":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/effect-prisma-generator_0.7.0_1764366889258_0.15555733268656735","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"effect-prisma-generator","version":"0.7.1","keywords":["prisma","generator","effect"],"author":{"name":"m9tdev"},"license":"MIT","_id":"effect-prisma-generator@0.7.1","maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"bin":{"effect-prisma-generator":"dist/index.js"},"dist":{"shasum":"1430d1da8e45b75d8c94ed016eebee4b8a8c58d4","tarball":"https://registry.npmjs.org/effect-prisma-generator/-/effect-prisma-generator-0.7.1.tgz","fileCount":4,"integrity":"sha512-SKjGo1929ltpXjpG/Cs/uwAZUkMHgP5Ss/ZOMJul6l6RK9GSlNeMtshVYItOCZYhsH+drk6Mj89aq7tYbjBMGw==","signatures":[{"sig":"MEYCIQDzrAMpQOC6twU3YybdqwJratMWaJYuAJBxPARimVYw1QIhAOnnB20ihHTh/o7VC9cXCvu6bZ01eKZd+n6iPKG0Zofz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/effect-prisma-generator@0.7.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":35978},"main":"dist/index.js","gitHead":"2cbe1ba57c202d386e12e3324e9efc8df9e91d64","scripts":{"test":"tsx scripts/runTests.ts","build":"tsc && chmod +x dist/index.js","format":"prettier --write . && eslint . --fix","prepublishOnly":"npm run build"},"_npmUser":{"name":"m9tdev","email":"mathieupost@gmail.com"},"repository":{"url":"git+https://github.com/m9tdev/effect-prisma-generator.git","type":"git"},"_npmVersion":"11.6.2","description":"Prisma generator for Effect","directories":{},"_nodeVersion":"24.11.1","dependencies":{"@prisma/generator-helper":"^7.0.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","effect":"^3.19.8","eslint":"^9.39.1","prisma":"^7.0.1","vitest":"^3.0.7","prettier":"3.7.1","@eslint/js":"^9.39.1","typescript":"^5.9.3","@types/node":"^24.10.1","@effect/vitest":"^0.27.0","@prisma/client":"^7.0.1","@effect/platform":"^0.93.5","typescript-eslint":"^8.48.0","@effect/platform-node":"^0.102.0","eslint-config-prettier":"^10.1.8","@prisma/adapter-better-sqlite3":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/effect-prisma-generator_0.7.1_1764768944113_0.33672313756121985","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"effect-prisma-generator","version":"0.8.0","keywords":["prisma","generator","effect"],"author":{"name":"m9tdev"},"license":"MIT","_id":"effect-prisma-generator@0.8.0","maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"bin":{"effect-prisma-generator":"dist/index.js"},"dist":{"shasum":"c208715f6ca0d63ffa748e432e01d5290a41e1bc","tarball":"https://registry.npmjs.org/effect-prisma-generator/-/effect-prisma-generator-0.8.0.tgz","fileCount":4,"integrity":"sha512-4MlzhxoGAdkImxjw6oUBEPHepd8CU9XxEZmbz/MTB/IvMjNgJkhn74Ffeafoczl68nwerlQQ/HBrmcdPeut4pw==","signatures":[{"sig":"MEUCIFPzvw/vOEzXGtUnD+LcQZGrqxLJnybZpfGpTdu2DXR+AiEA63rlkCqinPYKmdMdOatVyl5ASp6SizSZ/rhyh7enk7U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/effect-prisma-generator@0.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":36335},"main":"dist/index.js","gitHead":"784de866d585c86e850cdb94eee0a6851224e288","scripts":{"test":"tsx scripts/runTests.ts","build":"tsc && chmod +x dist/index.js","format":"prettier --write . && eslint . --fix","prepublishOnly":"npm run build"},"_npmUser":{"name":"m9tdev","email":"mathieupost@gmail.com"},"repository":{"url":"git+https://github.com/m9tdev/effect-prisma-generator.git","type":"git"},"_npmVersion":"11.6.2","description":"Prisma generator for Effect","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@prisma/generator-helper":"^7.0.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","effect":"^3.19.8","eslint":"^9.39.1","prisma":"^7.0.1","vitest":"^3.0.7","prettier":"3.7.1","@eslint/js":"^9.39.1","typescript":"^5.9.3","@types/node":"^24.10.1","@effect/vitest":"^0.27.0","@prisma/client":"^7.0.1","@effect/platform":"^0.93.5","typescript-eslint":"^8.48.0","@effect/platform-node":"^0.102.0","eslint-config-prettier":"^10.1.8","@prisma/adapter-better-sqlite3":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/effect-prisma-generator_0.8.0_1770293116669_0.5202468826502349","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"effect-prisma-generator","version":"0.8.1","keywords":["prisma","generator","effect"],"author":{"name":"m9tdev"},"license":"MIT","_id":"effect-prisma-generator@0.8.1","maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"bin":{"effect-prisma-generator":"dist/index.js"},"dist":{"shasum":"51ef2268a919cb875b4fa510577bd1f542ab54c0","tarball":"https://registry.npmjs.org/effect-prisma-generator/-/effect-prisma-generator-0.8.1.tgz","fileCount":4,"integrity":"sha512-nFObq9s90lM6yW1e2kg/bjAg/W9FovG0KgSZhrwglcLl5ue9ixSK5gJlpjj4M+nZcksu89EW7enQNVdFpQa9wg==","signatures":[{"sig":"MEQCIGgzBkSz73XubisvqWNUOUYsKvJ9ZCvdsTGF9GzKT0VCAiByuRpkELFNEpM0tWns285m3tJNZEVKlWO6nhCH+Ip73Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/effect-prisma-generator@0.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":36662},"main":"dist/index.js","gitHead":"52f82d75a77f0eb070cc0a230a2a9ae1bb11efee","scripts":{"test":"tsx scripts/runTests.ts","build":"tsc && chmod +x dist/index.js","format":"prettier --write . && eslint . --fix","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:05e0d3c3-79cf-4f16-b900-722b9eef61b5"}},"repository":{"url":"git+https://github.com/m9tdev/effect-prisma-generator.git","type":"git"},"_npmVersion":"11.9.0","description":"Prisma generator for Effect","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@prisma/generator-helper":"^7.0.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","effect":"^3.19.8","eslint":"^9.39.1","prisma":"^7.0.1","vitest":"^3.0.7","prettier":"3.7.1","@eslint/js":"^9.39.1","typescript":"^5.9.3","@types/node":"^24.10.1","@effect/vitest":"^0.27.0","@prisma/client":"^7.0.1","@effect/platform":"^0.93.5","typescript-eslint":"^8.48.0","@effect/platform-node":"^0.102.0","eslint-config-prettier":"^10.1.8","@prisma/adapter-better-sqlite3":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/effect-prisma-generator_0.8.1_1773091676262_0.6957148497752319","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"effect-prisma-generator","version":"0.9.0","keywords":["prisma","generator","effect"],"author":{"name":"m9tdev"},"license":"MIT","_id":"effect-prisma-generator@0.9.0","maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"bin":{"effect-prisma-generator":"dist/index.js"},"dist":{"shasum":"e5e4e556b67aadb0613a269d752d30eed55210e0","tarball":"https://registry.npmjs.org/effect-prisma-generator/-/effect-prisma-generator-0.9.0.tgz","fileCount":4,"integrity":"sha512-JGLIrEp4LCHnz8JnklDoBvC0r7PKkUEIUb9NU/cOTeNc7uTI+7f8CnLiYJQiZUxyouwxCuW2k50f6MlRnI6WMw==","signatures":[{"sig":"MEYCIQCTTcVHeQFIa8lpsRuJs3mK7Is19e0j85gWFx1d3RLlJgIhAJ3eZNZMDLOIpa4lIEvH4aOzZ+Y1ZGLFkGUB2omNMJT2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/effect-prisma-generator@0.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41312},"main":"dist/index.js","gitHead":"e64ff1f61ad41813d055c1d9f0a10c4981e6a944","scripts":{"test":"tsx scripts/runTests.ts","build":"tsc && chmod +x dist/index.js","format":"prettier --write . && eslint . --fix","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:05e0d3c3-79cf-4f16-b900-722b9eef61b5"}},"repository":{"url":"git+https://github.com/m9tdev/effect-prisma-generator.git","type":"git"},"_npmVersion":"11.13.0","description":"Prisma generator for Effect","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@prisma/generator-helper":"^7.8.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","effect":"4.0.0-beta.83","eslint":"^9.39.1","prisma":"^7.8.0","vitest":"^3.2.0","prettier":"3.7.1","@eslint/js":"^9.39.1","typescript":"^5.9.3","@types/node":"^24.10.1","typescript-eslint":"^8.48.0","@effect/platform-node":"4.0.0-beta.83","eslint-config-prettier":"^10.1.8"},"peerDependencies":{"effect":"^3.0.0 || >=4.0.0-beta","prisma":"^7.0.0","@prisma/client":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/effect-prisma-generator_0.9.0_1781963997763_0.6955151404601694","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"effect-prisma-generator","version":"0.10.0","description":"Prisma generator for Effect","main":"dist/index.js","bin":{"effect-prisma-generator":"dist/index.js"},"scripts":{"build":"tsc && chmod +x dist/index.js","test":"tsx scripts/runTests.ts","format":"prettier --write . && eslint . --fix","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/m9tdev/effect-prisma-generator.git"},"keywords":["prisma","generator","effect"],"author":{"name":"m9tdev"},"license":"MIT","dependencies":{"@prisma/generator-helper":"^7.8.0"},"peerDependencies":{"@prisma/client":"^7.0.0","effect":"^3.0.0 || >=4.0.0-beta","prisma":"^7.0.0"},"devDependencies":{"@effect/platform-node":"4.0.0-beta.83","@eslint/js":"^9.39.1","@types/node":"^24.10.1","effect":"4.0.0-beta.83","eslint":"^9.39.1","eslint-config-prettier":"^10.1.8","prettier":"3.7.1","prisma":"^7.8.0","tsx":"^4.20.6","typescript":"^5.9.3","typescript-eslint":"^8.48.0","vitest":"^3.2.0"},"gitHead":"c9ad25d95c576ca59c27e797468d354cc60d307c","_id":"effect-prisma-generator@0.10.0","bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-2n91QMS+EiwJop0UGYcXPJx62pA1kn1K7sxlrR+Ma3On79JMRHjVXsAzb6zfF5f0qRj01lBEmjwvoBDdD7+M9Q==","shasum":"87ade630ab352c91bc2ed93b24c4fac5e6d2f559","tarball":"https://registry.npmjs.org/effect-prisma-generator/-/effect-prisma-generator-0.10.0.tgz","fileCount":4,"unpackedSize":44121,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/effect-prisma-generator@0.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDinf80RzIYG16A8dXz2evz4bGWA+82Oox6qNOfknn6kQIgSVOmCaX5YgDvC0C5JH7I6wY/K40EN/hzL+vXe0lpk2M="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:05e0d3c3-79cf-4f16-b900-722b9eef61b5"}},"directories":{},"maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/effect-prisma-generator_0.10.0_1783503356323_0.08413409614213929"},"_hasShrinkwrap":false}},"time":{"created":"2025-11-19T14:58:29.154Z","modified":"2026-07-08T09:35:56.806Z","0.1.0":"2025-11-19T14:58:29.318Z","0.2.0":"2025-11-20T08:56:44.546Z","0.2.1":"2025-11-20T10:26:54.250Z","0.3.0":"2025-11-20T11:21:18.002Z","0.3.1":"2025-11-20T13:44:32.650Z","0.3.2":"2025-11-20T13:51:35.979Z","0.3.3":"2025-11-20T14:43:33.217Z","0.4.0":"2025-11-20T15:38:20.067Z","0.5.0":"2025-11-28T14:51:47.939Z","0.6.0":"2025-11-28T18:15:36.436Z","0.7.0":"2025-11-28T21:54:49.454Z","0.7.1":"2025-12-03T13:35:44.300Z","0.8.0":"2026-02-05T12:05:16.808Z","0.8.1":"2026-03-09T21:27:56.401Z","0.9.0":"2026-06-20T13:59:57.896Z","0.10.0":"2026-07-08T09:35:56.457Z"},"bugs":{"url":"https://github.com/m9tdev/effect-prisma-generator/issues"},"author":{"name":"m9tdev"},"license":"MIT","homepage":"https://github.com/m9tdev/effect-prisma-generator#readme","keywords":["prisma","generator","effect"],"repository":{"type":"git","url":"git+https://github.com/m9tdev/effect-prisma-generator.git"},"description":"Prisma generator for Effect","maintainers":[{"name":"m9tdev","email":"mathieupost@gmail.com"}],"readme":"# Effect Prisma Generator\n\nA Prisma generator that creates a fully-typed, Effect-based service wrapper for your Prisma Client.\n\n## Features\n\n- 🚀 **Effect Integration**: All Prisma operations are wrapped in `Effect` for robust error handling and composability.\n- 🛡️ **Type Safety**: Full TypeScript support with generated types matching your Prisma schema.\n- 🧩 **Dependency Injection**: Integrates seamlessly with Effect's `Layer` and `Context` system.\n- 🔍 **Error Handling**: Automatically catches and wraps Prisma errors into specific typed Effect errors.\n\n## Installation\n\nInstall the generator as a development dependency:\n\n```bash\nnpm install -D effect-prisma-generator\n# or\npnpm add -D effect-prisma-generator\n# or\nyarn add -D effect-prisma-generator\n```\n\n`effect` and `@prisma/client` are peer dependencies — install them in your project alongside Prisma.\n\n### Effect version support\n\nThe generator supports both **Effect v3** and **Effect v4 (beta)** from a single package. It detects the `effect` version installed in your project and emits matching code, so you don't need a special install:\n\n- **Effect v3** → uses `Context.Tag` and the auto-generated `PrismaService.Default` layer.\n- **Effect v4** → uses `Context.Service` and exposes `PrismaService.layer`.\n\n> Effect v4 is still in beta and its APIs may shift between releases, so v4 output is considered experimental.\n\nIf detection ever picks the wrong major (or `effect` can't be resolved — in which case it defaults to v3), set it explicitly in the generator block:\n\n```prisma\ngenerator effect {\n  provider         = \"effect-prisma-generator\"\n  output           = \"./generated/effect.ts\"\n  clientImportPath = \"./client\"\n  effectVersion    = \"4\" // \"3\" or \"4\"; omit to auto-detect\n}\n```\n\n## Configuration\n\nAdd the generator to your `schema.prisma` file:\n\n```prisma\n// prisma/schema.prisma\ngenerator client {\n  provider        = \"prisma-client\"\n  output          = \"./generated\"\n}\n\ngenerator effect {\n  provider = \"effect-prisma-generator\"\n  output   = \"./generated/effect.ts\" // relative to the schema.prisma file\n  clientImportPath = \"./client\" // relative to the output path ^\n}\n```\n\nThen run `prisma generate` to generate the client and the Effect service.\n\n### Recommendation (optional)\n\nAdd the following to your `tsconfig.json`:\n\n```json\n{\n  \"compilerOptions\": {\n    \"paths\": {\n      \"~prisma/*\": [\"./prisma/generated/*\"]\n    }\n  }\n}\n```\n\nThen you can import the generated PrismaService (and PrismaClient) like this:\n\n```typescript\nimport { PrismaClient } from \"~prisma/client\";\nimport { PrismaService } from \"~prisma/effect\";\n```\n\nOtherwise, you can import the generated types like this (adjust the path accordingly):\n\n```typescript\nimport { PrismaClient } from \"../../prisma/generated/client\";\nimport { PrismaService } from \"../../prisma/generated/effect\";\n```\n\n## Usage\n\n### 1. Provide the Layer\n\nInitialize the `PrismaClient` and provide it to the generated `PrismaService` layer as a `PrismaClientService`. The layer accessor depends on your Effect version: `PrismaService.Default` on v3, `PrismaService.layer` on v4.\n\n```typescript\nimport { Effect, Layer } from \"effect\";\nimport { PrismaService, PrismaClientService } from \"~prisma/effect\";\n\n// ... in your program\nconst prisma = new PrismaClient({ adapter });\nconst PrismaLayer = Layer.provide(\n  PrismaService.Default, // on Effect v4, use PrismaService.layer\n  Layer.succeed(PrismaClientService, prisma),\n);\n```\n\n### 2. Use the Service\n\nAccess the `PrismaService` in your Effect programs.\n\n```typescript\nimport { PrismaService } from \"./generated/effect\";\nimport { Effect } from \"effect\";\n\nconst program = Effect.gen(function* () {\n  const prisma = yield* PrismaService;\n\n  // All standard Prisma operations are available\n  const users = yield* prisma.user.findMany({\n    where: { active: true },\n    select: {\n      id: true,\n      accounts: {\n        select: {\n          id: true,\n        },\n      },\n    },\n  });\n  // users: { id: string, accounts: { id: string }[] }[]\n\n  return users;\n});\n```\n\n## API\n\nThe generated `PrismaService` mirrors your Prisma Client API but returns `Effect<SpecificPrismaResultType, PrismaError, never>` instead of Promises, where `PrismaError` is a specific union type based on the operation (e.g., `PrismaCreateError`, `PrismaUpdateError`, `PrismaFindError`).\n\n### Error Handling\n\nAll operations return an `Effect` that can fail with specific Prisma errors. The generator maps Prisma's error codes to typed Effect errors.\n\nEach operation type (create, update, delete, find, etc.) returns a specific union of possible errors.\n\n#### Available Errors\n\n- `PrismaUniqueConstraintError`\n- `PrismaForeignKeyConstraintError`\n- `PrismaRecordNotFoundError`\n- `PrismaRelationViolationError`\n- `PrismaRelatedRecordNotFoundError`\n- `PrismaTransactionConflictError`\n- `PrismaValueTooLongError`\n- `PrismaValueOutOfRangeError`\n- `PrismaDbConstraintError`\n- `PrismaConnectionError`\n- `PrismaMissingRequiredValueError`\n- `PrismaInputValidationError`\n\nAll errors carry the following context:\n\n```typescript\n{\n  cause: Prisma.PrismaClientKnownRequestError;\n  operation: string; // e.g. \"create\", \"findUnique\"\n  model: string; // e.g. \"User\", \"Post\"\n}\n```\n\n#### Example\n\n```typescript\nimport { PrismaService, PrismaUniqueConstraintError } from \"./generated/effect\";\nimport { Effect } from \"effect\";\n\nconst program = Effect.gen(function* () {\n  const prisma = yield* PrismaService;\n\n  yield* prisma.user\n    .create({\n      data: { email: \"test@example.com\", name: \"Test\" },\n    })\n    .pipe(\n      Effect.catchTag(\"PrismaUniqueConstraintError\", (error) =>\n        Effect.logError(`User with email already exists: ${error.model}`),\n      ),\n    );\n});\n```\n\n### Transactions\n\nThe generated service includes a `$transaction` method that allows you to run multiple operations within a database transaction.\n\n```typescript\nconst program = Effect.gen(function* () {\n  const prisma = yield* PrismaService;\n\n  yield* prisma.$transaction(\n    Effect.gen(function* () {\n      const user = yield* prisma.user.create({ data: { name: \"Alice\" } });\n      yield* prisma.post.create({\n        data: { title: \"Hello\", authorId: user.id },\n      });\n    }),\n  );\n});\n```\n\n### Nested Transactions\n\nThe `$transaction` method supports nesting. If you call `$transaction` within an existing transaction, it will reuse the parent transaction context. If any operation fails, the entire transaction (including the parent) is rolled back.\n\n```typescript\nconst program = Effect.gen(function* () {\n  const prisma = yield* PrismaService;\n\n  yield* prisma.$transaction(\n    Effect.gen(function* () {\n      // Operation 1\n      yield* prisma.user.create({ data: { name: \"Parent\" } });\n\n      // Nested transaction\n      yield* prisma.$transaction(\n        Effect.gen(function* () {\n          // Operation 2\n          yield* prisma.user.create({ data: { name: \"Child\" } });\n        }),\n      );\n    }),\n  );\n});\n```\n\n## Development\n\n```bash\nnpm install\nnpm test\n```\n\nThe integration tests under `tests/` are an isolated package with their own\n`effect` version, so the generator can be exercised against both Effect v3 and\nv4. `npm test` installs the `tests/` fixtures on first run (defaulting to the\nEffect v4 line); CI runs the suite against both majors via a matrix that swaps\nthe `tests/` `effect` / `@effect/vitest` versions.\n","readmeFilename":"README.md"}