{"_id":"@assay-ai/jest","_rev":"5-997ddf659db68ec880d67a406516ac81","name":"@assay-ai/jest","dist-tags":{"beta":"0.2.0-beta","latest":"1.3.1-beta"},"versions":{"0.1.0-beta":{"name":"@assay-ai/jest","version":"0.1.0-beta","license":"MIT","_id":"@assay-ai/jest@0.1.0-beta","maintainers":[{"name":"aissam-nexus","email":"aissamirhir@gmail.com"}],"homepage":"https://github.com/assay-ai/assay#readme","bugs":{"url":"https://github.com/assay-ai/assay/issues"},"dist":{"shasum":"46883a265f4f949359bc128b190c948c61aaa132","tarball":"https://registry.npmjs.org/@assay-ai/jest/-/jest-0.1.0-beta.tgz","fileCount":8,"integrity":"sha512-Pf3OCGE7aYrVEzAWqN6phdFuFasyyCE6jwzvCftltjMf9WkcsryJgGJsUoVkKa+YFOSOXKU7X8YQ3OYKlzqlYw==","signatures":[{"sig":"MEUCICwXWFx2Li/uVrfeGdw821pMN+FBtX9Ct6WETuUFYz3qAiEA6zi8SC6DCJ6a1gGnDXGkN+GBk0aPWzL8QJ11HS1MkUI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@assay-ai%2fjest@0.1.0-beta","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":29181},"main":"./dist/index.cjs","type":"module","_from":"file:assay-ai-jest-0.1.0-beta.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"scripts":{"dev":"tsup --watch","build":"tsup","clean":"rm -rf dist .turbo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"aissam-nexus","email":"aissamirhir@gmail.com"},"_resolved":"/tmp/b451352aa284a608f3c38217004eff4d/assay-ai-jest-0.1.0-beta.tgz","_integrity":"sha512-Pf3OCGE7aYrVEzAWqN6phdFuFasyyCE6jwzvCftltjMf9WkcsryJgGJsUoVkKa+YFOSOXKU7X8YQ3OYKlzqlYw==","repository":{"url":"git+https://github.com/assay-ai/assay.git","type":"git","directory":"packages/jest"},"_npmVersion":"10.8.2","description":"Jest integration for the Assay LLM evaluation framework","directories":{},"_nodeVersion":"20.20.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","typescript":"^5.7.0","@types/jest":"^29.0.0","@assay-ai/core":"0.1.0-beta","@assay-ai/tsconfig":"0.0.0"},"peerDependencies":{"jest":">=29.0.0","@assay-ai/core":"0.1.0-beta"},"_npmOperationalInternal":{"tmp":"tmp/jest_0.1.0-beta_1773150564388_0.03374530008170362","host":"s3://npm-registry-packages-npm-production"}},"0.2.0-beta":{"name":"@assay-ai/jest","version":"0.2.0-beta","license":"MIT","_id":"@assay-ai/jest@0.2.0-beta","maintainers":[{"name":"aissam-nexus","email":"aissamirhir@gmail.com"}],"homepage":"https://github.com/assay-ai/assay#readme","bugs":{"url":"https://github.com/assay-ai/assay/issues"},"dist":{"shasum":"86a9156434d26e185ab76128c7401a0acb53f7ed","tarball":"https://registry.npmjs.org/@assay-ai/jest/-/jest-0.2.0-beta.tgz","fileCount":9,"integrity":"sha512-+ByMv5Vo9kf7uqeR4d3LoBmj5B1no3tKmROGpCI9m2sfM5pO4S14kdmPkdtJ8AAmv6r/n4r3xQt7xdMc6PKz3w==","signatures":[{"sig":"MEUCIQCImZtpxO33A3ynrMeaAeI0bpGgITajbBdaK/1Tc6sVQAIgFcCFqFKfC3zPsq3VnSGSiZMJssVdz4yFMjviGr4N5jE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@assay-ai%2fjest@0.2.0-beta","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31882},"main":"./dist/index.cjs","type":"module","_from":"file:assay-ai-jest-0.2.0-beta.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"scripts":{"dev":"tsup --watch","build":"tsup","clean":"rm -rf dist .turbo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"aissam-nexus","email":"aissamirhir@gmail.com"},"_resolved":"/tmp/95d9d16c68a2568d936afa5fc25779cb/assay-ai-jest-0.2.0-beta.tgz","_integrity":"sha512-+ByMv5Vo9kf7uqeR4d3LoBmj5B1no3tKmROGpCI9m2sfM5pO4S14kdmPkdtJ8AAmv6r/n4r3xQt7xdMc6PKz3w==","repository":{"url":"git+https://github.com/assay-ai/assay.git","type":"git","directory":"packages/jest"},"_npmVersion":"10.8.2","description":"Jest integration for the Assay LLM evaluation framework","directories":{},"_nodeVersion":"20.20.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.3.0","typescript":"^5.7.0","@types/jest":"^29.0.0","@assay-ai/core":"0.2.0-beta","@assay-ai/tsconfig":"0.0.0"},"peerDependencies":{"jest":">=29.0.0","@assay-ai/core":"0.2.0-beta"},"_npmOperationalInternal":{"tmp":"tmp/jest_0.2.0-beta_1773150958550_0.9852740598318375","host":"s3://npm-registry-packages-npm-production"}},"0.2.1-beta":{"name":"@assay-ai/jest","version":"0.2.1-beta","license":"MIT","_id":"@assay-ai/jest@0.2.1-beta","maintainers":[{"name":"aissam-nexus","email":"aissamirhir@gmail.com"}],"homepage":"https://github.com/assay-ai/assay#readme","bugs":{"url":"https://github.com/assay-ai/assay/issues"},"dist":{"shasum":"cbe16ad2c3d0d36f5dd5325ef18f260670ac267c","tarball":"https://registry.npmjs.org/@assay-ai/jest/-/jest-0.2.1-beta.tgz","fileCount":9,"integrity":"sha512-klAIHh/+ISgzILPybnVcHE4NEADnytxwI4rjK5oPMNe94hCSdWm2CYq7X+hZlvgdvEdV7/zg7o0qeKfz5Y1I9Q==","signatures":[{"sig":"MEYCIQDbSkOCoVRiKe5qi+qQt+QpHV9rl+SfSCTv83fu+vmX5AIhAJgXxbgHW8amABLt0KS/U7oTykPiRrC1kxCqucge9wTK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@assay-ai%2fjest@0.2.1-beta","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31882},"main":"./dist/index.cjs","type":"module","_from":"file:assay-ai-jest-0.2.1-beta.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"scripts":{"dev":"tsup --watch","build":"tsup","clean":"rm -rf dist .turbo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"aissam-nexus","email":"aissamirhir@gmail.com"},"_resolved":"/tmp/9046ae230f793d6df602c5a7a7f43f6e/assay-ai-jest-0.2.1-beta.tgz","_integrity":"sha512-klAIHh/+ISgzILPybnVcHE4NEADnytxwI4rjK5oPMNe94hCSdWm2CYq7X+hZlvgdvEdV7/zg7o0qeKfz5Y1I9Q==","repository":{"url":"git+https://github.com/assay-ai/assay.git","type":"git","directory":"packages/jest"},"_npmVersion":"10.8.2","description":"Jest integration for the Assay LLM evaluation framework","directories":{},"_nodeVersion":"20.20.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","typescript":"^5.7.0","@types/jest":"^29.0.0","@assay-ai/core":"0.2.1-beta","@assay-ai/tsconfig":"0.0.0"},"peerDependencies":{"jest":">=29.0.0","@assay-ai/core":"0.2.1-beta"},"_npmOperationalInternal":{"tmp":"tmp/jest_0.2.1-beta_1773151274790_0.744608174190152","host":"s3://npm-registry-packages-npm-production"}},"0.3.0-beta":{"name":"@assay-ai/jest","version":"0.3.0-beta","license":"MIT","_id":"@assay-ai/jest@0.3.0-beta","maintainers":[{"name":"aissam-nexus","email":"aissamirhir@gmail.com"}],"homepage":"https://github.com/assay-ai/assay#readme","bugs":{"url":"https://github.com/assay-ai/assay/issues"},"dist":{"shasum":"a70bc9c5fd764513f65e003a322b1cf2badcb8ef","tarball":"https://registry.npmjs.org/@assay-ai/jest/-/jest-0.3.0-beta.tgz","fileCount":9,"integrity":"sha512-GyIXEUr1oZReh6TWGSm55NxvZEgVOjJHEYilpSZcl/bt+b+cu/+FgLLws5WxgUefNy4lwbzltrDhiEHake2QYg==","signatures":[{"sig":"MEUCIEPP0nSdUj16XjJ2vTFhjlMG5RH6vIrJ2a+E4tUgqQAYAiEAzCQwpbdCpQ5PZGAsOi12UtHxO78uvn0NOPUBgbZfurc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@assay-ai%2fjest@0.3.0-beta","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31882},"main":"./dist/index.cjs","type":"module","_from":"file:assay-ai-jest-0.3.0-beta.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"scripts":{"dev":"tsup --watch","build":"tsup","clean":"rm -rf dist .turbo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"aissam-nexus","email":"aissamirhir@gmail.com"},"_resolved":"/tmp/6a61dd73d8b55bc8f53377d1365e9333/assay-ai-jest-0.3.0-beta.tgz","_integrity":"sha512-GyIXEUr1oZReh6TWGSm55NxvZEgVOjJHEYilpSZcl/bt+b+cu/+FgLLws5WxgUefNy4lwbzltrDhiEHake2QYg==","repository":{"url":"git+https://github.com/assay-ai/assay.git","type":"git","directory":"packages/jest"},"_npmVersion":"10.8.2","description":"Jest integration for the Assay LLM evaluation framework","directories":{},"_nodeVersion":"20.20.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","typescript":"^5.7.0","@types/jest":"^29.0.0","@assay-ai/core":"0.3.0-beta","@assay-ai/tsconfig":"0.0.0"},"peerDependencies":{"jest":">=29.0.0","@assay-ai/core":"0.3.0-beta"},"_npmOperationalInternal":{"tmp":"tmp/jest_0.3.0-beta_1773153871074_0.44981080483667424","host":"s3://npm-registry-packages-npm-production"}},"1.3.1-beta":{"name":"@assay-ai/jest","version":"1.3.1-beta","description":"Jest integration for the Assay LLM evaluation framework","homepage":"https://assay.js.org","license":"MIT","type":"module","main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"peerDependencies":{"jest":">=29.0.0","@assay-ai/core":"1.3.1-beta"},"devDependencies":{"@types/jest":"^29.0.0","tsup":"^8.3.0","typescript":"^5.7.0","@assay-ai/core":"1.3.1-beta","@assay-ai/tsconfig":"0.0.0"},"repository":{"type":"git","url":"git+https://github.com/assay-ai/assay.git","directory":"packages/jest"},"scripts":{"build":"tsup","dev":"tsup --watch","typecheck":"tsc --noEmit","clean":"rm -rf dist .turbo"},"_id":"@assay-ai/jest@1.3.1-beta","bugs":{"url":"https://github.com/assay-ai/assay/issues"},"_integrity":"sha512-I9qjhOcUFRkH3dO+e0C1iperOOsu4/Uy6BuECBDt9PjP3GG+03Tn/K7LnYBrwHziugF/t1xeWCn065PQqyvxwA==","_resolved":"/tmp/2218e37d49613e3adecd91a3130d221a/assay-ai-jest-1.3.1-beta.tgz","_from":"file:assay-ai-jest-1.3.1-beta.tgz","_nodeVersion":"20.20.0","_npmVersion":"10.8.2","dist":{"integrity":"sha512-I9qjhOcUFRkH3dO+e0C1iperOOsu4/Uy6BuECBDt9PjP3GG+03Tn/K7LnYBrwHziugF/t1xeWCn065PQqyvxwA==","shasum":"eee744e7316bb0fac2bccc4e7bce69ee41e7bc90","tarball":"https://registry.npmjs.org/@assay-ai/jest/-/jest-1.3.1-beta.tgz","fileCount":9,"unpackedSize":31685,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@assay-ai%2fjest@1.3.1-beta","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDwJ2fsn3qQTEfn7erM/cahegY3S5zUe7AhETdRo0thbAIhAJ+dUzdvLDXD3XW3AAtHtOb6ZwWynHgXQU9+py84/lkP"}]},"_npmUser":{"name":"aissam-nexus","email":"aissamirhir@gmail.com"},"directories":{},"maintainers":[{"name":"aissam-nexus","email":"aissamirhir@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/jest_1.3.1-beta_1773329587690_0.3155619122747404"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-10T13:49:23.967Z","modified":"2026-03-12T15:33:08.139Z","0.1.0-beta":"2026-03-10T13:49:24.543Z","0.2.0-beta":"2026-03-10T13:55:58.699Z","0.2.1-beta":"2026-03-10T14:01:14.939Z","0.3.0-beta":"2026-03-10T14:44:31.232Z","1.3.1-beta":"2026-03-12T15:33:07.845Z"},"bugs":{"url":"https://github.com/assay-ai/assay/issues"},"license":"MIT","homepage":"https://assay.js.org","repository":{"type":"git","url":"git+https://github.com/assay-ai/assay.git","directory":"packages/jest"},"description":"Jest integration for the Assay LLM evaluation framework","maintainers":[{"name":"aissam-nexus","email":"aissamirhir@gmail.com"}],"readme":"<div align=\"center\">\n\n# @assay-ai/jest\n\n*Custom Jest matchers for LLM evaluation with Assay*\n\n[![npm version](https://img.shields.io/npm/v/@assay-ai/jest?style=flat-square&color=6366f1)](https://www.npmjs.com/package/@assay-ai/jest)\n[![downloads](https://img.shields.io/npm/dm/@assay-ai/jest?style=flat-square&color=10b981)](https://www.npmjs.com/package/@assay-ai/jest)\n[![License](https://img.shields.io/badge/license-MIT-blue?style=flat-square)](https://github.com/assay-ai/assay/blob/main/LICENSE)\n\n[Documentation](https://assay.js.org) · [Metrics](https://assay.js.org/metrics/) · [API Reference](https://assay.js.org/api/)\n\n</div>\n\n## Installation\n\n```bash\npnpm add -D @assay-ai/core @assay-ai/jest     # pnpm\nnpm install -D @assay-ai/core @assay-ai/jest   # npm\nyarn add -D @assay-ai/core @assay-ai/jest      # Yarn\n```\n\n## Quick Start\n\n```typescript\n// jest.setup.ts\nimport { setupAssayMatchers } from \"@assay-ai/jest\";\n\nsetupAssayMatchers();\n```\n\n```typescript\n// chatbot.eval.ts\ndescribe(\"Customer Support Chatbot\", () => {\n  it(\"answers are relevant\", async () => {\n    await expect({\n      input: \"What is your return policy?\",\n      actualOutput: \"You can return items within 30 days of purchase.\",\n      retrievalContext: [\n        \"Our return policy allows returns within 30 days of purchase.\",\n      ],\n    }).toBeRelevant({ threshold: 0.8 });\n  });\n\n  it(\"does not hallucinate\", async () => {\n    await expect({\n      input: \"What is your return policy?\",\n      actualOutput: \"You can return items within 30 days of purchase.\",\n      context: [\n        \"Our return policy allows returns within 30 days of purchase.\",\n      ],\n    }).toNotHallucinate();\n  });\n});\n```\n\n## Part of the [Assay](https://github.com/assay-ai/assay) monorepo\n\n<p align=\"center\">\n  <a href=\"https://assay.js.org\"><img src=\"https://img.shields.io/badge/Documentation-6366f1?style=for-the-badge&logo=readthedocs&logoColor=white\" alt=\"Documentation\" /></a>\n  <a href=\"https://www.npmjs.com/package/@assay-ai/jest\"><img src=\"https://img.shields.io/badge/npm-cb3837?style=for-the-badge&logo=npm&logoColor=white\" alt=\"npm\" /></a>\n  <a href=\"https://github.com/assay-ai/assay\"><img src=\"https://img.shields.io/badge/GitHub-181717?style=for-the-badge&logo=github&logoColor=white\" alt=\"GitHub\" /></a>\n  <a href=\"https://github.com/assay-ai/assay/issues\"><img src=\"https://img.shields.io/badge/Issues-6366f1?style=for-the-badge&logo=github&logoColor=white\" alt=\"Issues\" /></a>\n</p>\n","readmeFilename":"README.md"}