{"_id":"@allstak/js","_rev":"10-08e209c8056cf3d02d1ad3d54170f015","name":"@allstak/js","dist-tags":{"latest":"0.3.2"},"versions":{"0.1.1":{"name":"@allstak/js","version":"0.1.1","keywords":["allstak","observability","monitoring","error-tracking","apm","tracing","nodejs"],"license":"MIT","_id":"@allstak/js@0.1.1","maintainers":[{"name":"allstak-","email":"info@allstak.io"}],"homepage":"https://allstak.sa","bugs":{"url":"https://github.com/allstak-io/allstak-js/issues"},"dist":{"shasum":"191438ebd21f85a1bb0808c358a0632e6e249cd3","tarball":"https://registry.npmjs.org/@allstak/js/-/js-0.1.1.tgz","fileCount":75,"integrity":"sha512-UmfMlIzWb7FKQ3s4TvUdzJoj4yCeZQtUGBMYLhjcRSs2oEcJ1wbfUnaUGyahQcB6l5pR05Y2PgPxIZOhRNZ4fQ==","signatures":[{"sig":"MEYCIQCwMNliKHa+9io2+Ngu4Fho32WSqJ8BsVfoWTst/IswYAIhAIK240RFF+hgfCr+AAjC0LV+Kc1la+emydvnN1IPdhcf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2392533},"main":"./dist/node/index.js","types":"./dist/node/index.d.ts","module":"./dist/node/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/node/index.d.ts","import":"./dist/node/index.mjs","require":"./dist/node/index.js"},"./db":{"types":"./dist/browser/db.d.ts","import":"./dist/browser/db.mjs","require":"./dist/browser/db.js"},"./cron":{"types":"./dist/browser/cron.d.ts","import":"./dist/browser/cron.mjs","require":"./dist/browser/cron.js"},"./react":{"types":"./dist/browser/react.d.ts","import":"./dist/browser/react.mjs","require":"./dist/browser/react.js"},"./browser":{"types":"./dist/browser/index.d.ts","import":"./dist/browser/index.mjs","require":"./dist/browser/index.js"},"./express":{"types":"./dist/node/express.d.ts","import":"./dist/node/express.mjs","require":"./dist/node/express.js"},"./react-native":{"types":"./dist/browser/react-native.d.ts","import":"./dist/browser/react-native.mjs","require":"./dist/browser/react-native.js"}},"gitHead":"1df967be58804da4c8fe42ad1eac52a66a64973e","scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist","format":"prettier --write src","prepare":"tsup","test:watch":"vitest","prepublishOnly":"tsup"},"_npmUser":{"name":"allstak-","email":"info@allstak.io"},"repository":{"url":"git+https://github.com/allstak-io/allstak-js.git","type":"git"},"_npmVersion":"10.9.3","description":"Official AllStak JavaScript/TypeScript SDK — error tracking, structured logs, HTTP + DB monitoring, distributed tracing, and cron monitoring for Node.js applications.","directories":{},"_nodeVersion":"22.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^24.0.0","react":"^18.3.0","eslint":"^8.57.0","vitest":"^1.3.0","prettier":"^3.2.0","typescript":"^5.3.0","@types/node":"^20.0.0","@types/react":"^18.3.0","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"peerDependencies":{"react":">=16.8.0"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/js_0.1.1_1776956217027_0.8385593863095335","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@allstak/js","version":"0.1.2","keywords":["allstak","observability","monitoring","error-tracking","apm","tracing","nodejs"],"license":"MIT","_id":"@allstak/js@0.1.2","maintainers":[{"name":"allstak-","email":"info@allstak.io"}],"homepage":"https://allstak.sa","bugs":{"url":"https://github.com/allstak-io/allstak-js/issues"},"dist":{"shasum":"296a650397230e6c8f85ead26295ab166aea4756","tarball":"https://registry.npmjs.org/@allstak/js/-/js-0.1.2.tgz","fileCount":75,"integrity":"sha512-cSRlUTJGrK0kQosdvqh03IqCSkNJjbPN6CqmRo04UfJHWJgvoxkLMIsZPOcuhCI9dxDrnLOtWdpCnq+13yJYqg==","signatures":[{"sig":"MEYCIQCqYuclOLb8y7UvKtX+yfNUpFiKAZIlpfmUvxDJHwuR0AIhAO65BggMTU/qUUIjYo39ebAniINEdVgT6CVFVJEbQw2f","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2392533},"main":"./dist/node/index.js","types":"./dist/node/index.d.ts","module":"./dist/node/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/node/index.d.ts","import":"./dist/node/index.mjs","require":"./dist/node/index.js"},"./db":{"types":"./dist/browser/db.d.ts","import":"./dist/browser/db.mjs","require":"./dist/browser/db.js"},"./cron":{"types":"./dist/browser/cron.d.ts","import":"./dist/browser/cron.mjs","require":"./dist/browser/cron.js"},"./react":{"types":"./dist/browser/react.d.ts","import":"./dist/browser/react.mjs","require":"./dist/browser/react.js"},"./browser":{"types":"./dist/browser/index.d.ts","import":"./dist/browser/index.mjs","require":"./dist/browser/index.js"},"./express":{"types":"./dist/node/express.d.ts","import":"./dist/node/express.mjs","require":"./dist/node/express.js"},"./react-native":{"types":"./dist/browser/react-native.d.ts","import":"./dist/browser/react-native.mjs","require":"./dist/browser/react-native.js"}},"gitHead":"1ff7384673ddd5b8a69b2fd86f6fddb71ad89ad6","scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist","format":"prettier --write src","prepare":"tsup","test:watch":"vitest","prepublishOnly":"tsup"},"_npmUser":{"name":"allstak-","email":"info@allstak.io"},"repository":{"url":"git+https://github.com/allstak-io/allstak-js.git","type":"git"},"_npmVersion":"10.9.3","description":"Official AllStak JavaScript/TypeScript SDK — error tracking, structured logs, HTTP + DB monitoring, distributed tracing, and cron monitoring for Node.js applications.","directories":{},"_nodeVersion":"22.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^24.0.0","react":"^18.3.0","eslint":"^8.57.0","vitest":"^1.3.0","prettier":"^3.2.0","typescript":"^5.3.0","@types/node":"^20.0.0","@types/react":"^18.3.0","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"peerDependencies":{"react":">=16.8.0"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/js_0.1.2_1776956558818_0.9174582311071995","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@allstak/js","version":"0.1.3","keywords":["allstak","observability","monitoring","error-tracking","apm","tracing","nodejs"],"license":"MIT","_id":"@allstak/js@0.1.3","maintainers":[{"name":"allstak-","email":"info@allstak.io"}],"homepage":"https://allstak.sa","bugs":{"url":"https://github.com/allstak-io/allstak-js/issues"},"dist":{"shasum":"d5821e626233fd3c2b40a22911b72bf6d16b8c61","tarball":"https://registry.npmjs.org/@allstak/js/-/js-0.1.3.tgz","fileCount":75,"integrity":"sha512-YrWxsuCTeZ4ykf6LhWJez1SBib/kEfICKHj/Yk53efg81Ojm5/doxHh5xuG7pRmW/GxIY5AhGhcnq3sobdQAhg==","signatures":[{"sig":"MEUCICarnBYShWt6kunjjHC8M+hhLaB9eH3VJnLQRHBNO/3qAiEA9ARuXQsdy6XuFWFANUqXbrsfrqjKHVxsH3fxqgfrv0g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2380153},"main":"./dist/node/index.js","types":"./dist/node/index.d.ts","module":"./dist/node/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/node/index.d.ts","import":"./dist/node/index.mjs","require":"./dist/node/index.js"},"./db":{"types":"./dist/browser/db.d.ts","import":"./dist/browser/db.mjs","require":"./dist/browser/db.js"},"./cron":{"types":"./dist/browser/cron.d.ts","import":"./dist/browser/cron.mjs","require":"./dist/browser/cron.js"},"./react":{"types":"./dist/browser/react.d.ts","import":"./dist/browser/react.mjs","require":"./dist/browser/react.js"},"./browser":{"types":"./dist/browser/index.d.ts","import":"./dist/browser/index.mjs","require":"./dist/browser/index.js"},"./express":{"types":"./dist/node/express.d.ts","import":"./dist/node/express.mjs","require":"./dist/node/express.js"},"./react-native":{"types":"./dist/browser/react-native.d.ts","import":"./dist/browser/react-native.mjs","require":"./dist/browser/react-native.js"}},"gitHead":"7435a06c28f9dc32286bb9a4e2db5e66de1c9f15","scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist","format":"prettier --write src","prepare":"tsup","test:watch":"vitest","prepublishOnly":"tsup"},"_npmUser":{"name":"allstak-","email":"info@allstak.io"},"repository":{"url":"git+https://github.com/allstak-io/allstak-js.git","type":"git"},"_npmVersion":"10.9.3","description":"Official AllStak JavaScript/TypeScript SDK — error tracking, structured logs, HTTP + DB monitoring, distributed tracing, and cron monitoring for Node.js applications.","directories":{},"_nodeVersion":"22.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^24.0.0","react":"^18.3.0","eslint":"^8.57.0","vitest":"^1.3.0","prettier":"^3.2.0","typescript":"^5.3.0","@types/node":"^20.0.0","@types/react":"^18.3.0","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"peerDependencies":{"react":">=16.8.0"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/js_0.1.3_1776960344199_0.7907469274834653","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@allstak/js","version":"0.2.0","keywords":["allstak","observability","monitoring","error-tracking","apm","tracing","nodejs"],"license":"MIT","_id":"@allstak/js@0.2.0","maintainers":[{"name":"allstak-","email":"hello@allstak.sa"}],"homepage":"https://allstak.sa","bugs":{"url":"https://github.com/allstak-io/allstak-js/issues"},"dist":{"shasum":"93ce5cdc18dadf592092303ae90f02d5920d492d","tarball":"https://registry.npmjs.org/@allstak/js/-/js-0.2.0.tgz","fileCount":75,"integrity":"sha512-FTBBOR+FwJZpDEPEi+xbcuIFrS8jVAYQofC/h0K+WkuSv+WgZjmnWzWQQipTt7b9/gTxNFgBiamnnGggY0mpUg==","signatures":[{"sig":"MEYCIQChNTW5b9ARfgTSLFiWKU+NZTILLTdAYAoruiq26eHvdgIhAKMaLlegJxAqmXYeFFhF+ONh7QUAK3VQhQyzTxF534db","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2950308},"main":"./dist/node/index.js","_from":"file:allstak-js-0.2.0.tgz","types":"./dist/node/index.d.ts","module":"./dist/node/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/node/index.d.ts","import":"./dist/node/index.mjs","require":"./dist/node/index.js"},"./db":{"types":"./dist/browser/db.d.ts","import":"./dist/browser/db.mjs","require":"./dist/browser/db.js"},"./cron":{"types":"./dist/browser/cron.d.ts","import":"./dist/browser/cron.mjs","require":"./dist/browser/cron.js"},"./react":{"types":"./dist/browser/react.d.ts","import":"./dist/browser/react.mjs","require":"./dist/browser/react.js"},"./browser":{"types":"./dist/browser/index.d.ts","import":"./dist/browser/index.mjs","require":"./dist/browser/index.js"},"./express":{"types":"./dist/node/express.d.ts","import":"./dist/node/express.mjs","require":"./dist/node/express.js"},"./react-native":{"types":"./dist/browser/react-native.d.ts","import":"./dist/browser/react-native.mjs","require":"./dist/browser/react-native.js"}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist","format":"prettier --write src","test:watch":"vitest"},"_npmUser":{"name":"allstak-","email":"hello@allstak.sa"},"_resolved":"/tmp/4b88b91b86d24957fb7acaa014c37764/allstak-js-0.2.0.tgz","_integrity":"sha512-FTBBOR+FwJZpDEPEi+xbcuIFrS8jVAYQofC/h0K+WkuSv+WgZjmnWzWQQipTt7b9/gTxNFgBiamnnGggY0mpUg==","repository":{"url":"git+https://github.com/allstak-io/allstak-js.git","type":"git"},"_npmVersion":"10.8.2","description":"Official AllStak JavaScript/TypeScript SDK — error tracking, structured logs, HTTP + DB monitoring, distributed tracing, and cron monitoring for Node.js applications.","directories":{},"_nodeVersion":"20.20.2","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^24.0.0","react":"^18.3.0","eslint":"^8.57.0","vitest":"^1.3.0","prettier":"^3.2.0","typescript":"^5.3.0","@types/node":"^20.0.0","@types/react":"^18.3.0","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"peerDependencies":{"react":">=16.8.0"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/js_0.2.0_1777414031929_0.7899451441726095","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@allstak/js","version":"0.2.1","keywords":["allstak","observability","monitoring","error-tracking","apm","tracing","nodejs"],"license":"MIT","_id":"@allstak/js@0.2.1","maintainers":[{"name":"allstak-","email":"hello@allstak.sa"}],"homepage":"https://allstak.sa","bugs":{"url":"https://github.com/allstak-io/allstak-js/issues"},"dist":{"shasum":"e7be0c24b126eeb0e6d93fd18174ad58c26fe60f","tarball":"https://registry.npmjs.org/@allstak/js/-/js-0.2.1.tgz","fileCount":106,"integrity":"sha512-k3+n7BG2SP16rqx5MS6VjI3ntJuKVgCe0y2mDmUyZFEsLmQ2vBZJxukJU0giLt6UtclaqFGIZmJWJ6xp6GS64g==","signatures":[{"sig":"MEUCIFFEgjlfeAkL4U+aYoWPFxwYmOX34smLJ+9ijah/J5s4AiEAzyef8a6BN/xg3sGfCCVRnPqBPycOcU2rOgXdpkWrc0s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3496657},"main":"./dist/node/index.js","types":"./dist/node/index.d.ts","module":"./dist/node/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/node/index.d.ts","import":"./dist/node/index.mjs","require":"./dist/node/index.js"},"./db":{"types":"./dist/browser/db.d.ts","import":"./dist/browser/db.mjs","require":"./dist/browser/db.js"},"./cron":{"types":"./dist/browser/cron.d.ts","import":"./dist/browser/cron.mjs","require":"./dist/browser/cron.js"},"./next":{"types":"./dist/node/next.d.ts","import":"./dist/node/next.mjs","require":"./dist/node/next.js"},"./vite":{"types":"./dist/node/vite.d.ts","import":"./dist/node/vite.mjs","require":"./dist/node/vite.js"},"./react":{"types":"./dist/browser/react.d.ts","import":"./dist/browser/react.mjs","require":"./dist/browser/react.js"},"./browser":{"types":"./dist/browser/index.d.ts","import":"./dist/browser/index.mjs","require":"./dist/browser/index.js"},"./express":{"types":"./dist/node/express.d.ts","import":"./dist/node/express.mjs","require":"./dist/node/express.js"},"./webpack":{"types":"./dist/node/webpack.d.ts","import":"./dist/node/webpack.mjs","require":"./dist/node/webpack.js"},"./sourcemaps":{"types":"./dist/node/sourcemaps.d.ts","import":"./dist/node/sourcemaps.mjs","require":"./dist/node/sourcemaps.js"},"./react-native":{"types":"./dist/browser/react-native.d.ts","import":"./dist/browser/react-native.mjs","require":"./dist/browser/react-native.js"}},"gitHead":"25b187f2834a3fc02871a351132ebdf07b395e71","scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist","format":"prettier --write src","prepare":"tsup","test:watch":"vitest","prepublishOnly":"tsup"},"_npmUser":{"name":"allstak-","email":"hello@allstak.sa"},"repository":{"url":"git+https://github.com/allstak-io/allstak-js.git","type":"git"},"_npmVersion":"10.9.3","description":"Official AllStak JavaScript/TypeScript SDK — error tracking, structured logs, HTTP + DB monitoring, distributed tracing, and cron monitoring for Node.js applications.","directories":{},"_nodeVersion":"22.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^24.0.0","react":"^18.3.0","eslint":"^8.57.0","vitest":"^1.3.0","prettier":"^3.2.0","typescript":"^5.3.0","@types/node":"^20.0.0","@types/react":"^18.3.0","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"peerDependencies":{"next":">=13.0.0","vite":">=4.0.0","react":">=16.8.0","webpack":">=5.0.0"},"peerDependenciesMeta":{"next":{"optional":true},"vite":{"optional":true},"react":{"optional":true},"webpack":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/js_0.2.1_1778477888624_0.6800506560769473","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@allstak/js","version":"0.2.2","keywords":["allstak","observability","monitoring","error-tracking","apm","tracing","nodejs"],"license":"MIT","_id":"@allstak/js@0.2.2","maintainers":[{"name":"allstak-","email":"hello@allstak.sa"}],"homepage":"https://allstak.sa","bugs":{"url":"https://github.com/allstak-io/allstak-js/issues"},"dist":{"shasum":"f7e06a91943f94440f8a369d6f8792ec9b252b24","tarball":"https://registry.npmjs.org/@allstak/js/-/js-0.2.2.tgz","fileCount":106,"integrity":"sha512-V7qCNPQadYukT3OXYhm3COIGaos6bKLXWZWkMp2Pz7gzh9U+xac8TWSDYf9gS4c598b9CBp0wlBOoyluiUGFHQ==","signatures":[{"sig":"MEQCIBJcfzWktJztDJB9B7Q3aUP09lgqyizz7BF4DVuUy+2JAiB8LJE8hk5/ZhkoAy1p3S8WsBMB15a/kSs3VAZvQe2zbA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3521739},"main":"./dist/node/index.js","types":"./dist/node/index.d.ts","module":"./dist/node/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/node/index.d.ts","import":"./dist/node/index.mjs","require":"./dist/node/index.js"},"./db":{"types":"./dist/browser/db.d.ts","import":"./dist/browser/db.mjs","require":"./dist/browser/db.js"},"./cron":{"types":"./dist/browser/cron.d.ts","import":"./dist/browser/cron.mjs","require":"./dist/browser/cron.js"},"./next":{"types":"./dist/node/next.d.ts","import":"./dist/node/next.mjs","require":"./dist/node/next.js"},"./vite":{"types":"./dist/node/vite.d.ts","import":"./dist/node/vite.mjs","require":"./dist/node/vite.js"},"./react":{"types":"./dist/browser/react.d.ts","import":"./dist/browser/react.mjs","require":"./dist/browser/react.js"},"./browser":{"types":"./dist/browser/index.d.ts","import":"./dist/browser/index.mjs","require":"./dist/browser/index.js"},"./express":{"types":"./dist/node/express.d.ts","import":"./dist/node/express.mjs","require":"./dist/node/express.js"},"./webpack":{"types":"./dist/node/webpack.d.ts","import":"./dist/node/webpack.mjs","require":"./dist/node/webpack.js"},"./sourcemaps":{"types":"./dist/node/sourcemaps.d.ts","import":"./dist/node/sourcemaps.mjs","require":"./dist/node/sourcemaps.js"},"./react-native":{"types":"./dist/browser/react-native.d.ts","import":"./dist/browser/react-native.mjs","require":"./dist/browser/react-native.js"}},"gitHead":"e813e130416889f5e2cd203ff27c6b81ca4e7144","scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist","format":"prettier --write src","prepare":"tsup","test:watch":"vitest","prepublishOnly":"tsup"},"_npmUser":{"name":"allstak-","email":"hello@allstak.sa"},"repository":{"url":"git+https://github.com/allstak-io/allstak-js.git","type":"git"},"_npmVersion":"10.9.3","description":"Official AllStak JavaScript/TypeScript SDK — error tracking, structured logs, HTTP + DB monitoring, distributed tracing, and cron monitoring for Node.js applications.","directories":{},"_nodeVersion":"22.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^24.0.0","react":"^18.3.0","eslint":"^8.57.0","vitest":"^1.3.0","prettier":"^3.2.0","typescript":"^5.3.0","@types/node":"^20.0.0","@types/react":"^18.3.0","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"peerDependencies":{"next":">=13.0.0","vite":">=4.0.0","react":">=16.8.0","webpack":">=5.0.0"},"peerDependenciesMeta":{"next":{"optional":true},"vite":{"optional":true},"react":{"optional":true},"webpack":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/js_0.2.2_1778480039302_0.6636186955968921","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@allstak/js","version":"0.2.3","keywords":["allstak","observability","monitoring","error-tracking","apm","tracing","nodejs"],"license":"MIT","_id":"@allstak/js@0.2.3","maintainers":[{"name":"allstak-","email":"hello@allstak.sa"}],"homepage":"https://allstak.sa","bugs":{"url":"https://github.com/AllStak/allstak-js/issues"},"dist":{"shasum":"da74db667548b0eb4e6c148720ec74efe98b0c92","tarball":"https://registry.npmjs.org/@allstak/js/-/js-0.2.3.tgz","fileCount":106,"integrity":"sha512-NkiMvg5Ml8j2TrZWNZWVfS4FLXVUzXEECenvHs6wqS9mks7E6TKlbtiLfLQ0Y0p5aEWbSNQl5uPLlS09RstXCQ==","signatures":[{"sig":"MEQCIHbCKMJXU5PMy7u9hRmOnINQ0YbvpyDguV/KymbuxD74AiAUcxneyZMGNXWmHEoGfapJa3c0kCx+MGev/Fweh8XV2Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3655302},"main":"./dist/node/index.js","pnpm":{"onlyBuiltDependencies":["esbuild","sharp"]},"types":"./dist/node/index.d.ts","module":"./dist/node/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/node/index.d.ts","import":"./dist/node/index.mjs","require":"./dist/node/index.js"},"./db":{"types":"./dist/browser/db.d.ts","import":"./dist/browser/db.mjs","require":"./dist/browser/db.js"},"./cron":{"types":"./dist/browser/cron.d.ts","import":"./dist/browser/cron.mjs","require":"./dist/browser/cron.js"},"./next":{"types":"./dist/node/next.d.ts","import":"./dist/node/next.mjs","require":"./dist/node/next.js"},"./vite":{"types":"./dist/node/vite.d.ts","import":"./dist/node/vite.mjs","require":"./dist/node/vite.js"},"./react":{"types":"./dist/browser/react.d.ts","import":"./dist/browser/react.mjs","require":"./dist/browser/react.js"},"./browser":{"types":"./dist/browser/index.d.ts","import":"./dist/browser/index.mjs","require":"./dist/browser/index.js"},"./express":{"types":"./dist/node/express.d.ts","import":"./dist/node/express.mjs","require":"./dist/node/express.js"},"./webpack":{"types":"./dist/node/webpack.d.ts","import":"./dist/node/webpack.mjs","require":"./dist/node/webpack.js"},"./sourcemaps":{"types":"./dist/node/sourcemaps.d.ts","import":"./dist/node/sourcemaps.mjs","require":"./dist/node/sourcemaps.js"},"./react-native":{"types":"./dist/browser/react-native.d.ts","import":"./dist/browser/react-native.mjs","require":"./dist/browser/react-native.js"}},"gitHead":"aabb6a7881788160832de5e7333c38c50d07f21f","scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist","format":"prettier --write src","prepare":"tsup","test:watch":"vitest","prepublishOnly":"tsup"},"_npmUser":{"name":"allstak-","email":"hello@allstak.sa"},"repository":{"url":"git+https://github.com/AllStak/allstak-js.git","type":"git"},"_npmVersion":"10.9.3","description":"Official AllStak JavaScript/TypeScript SDK — error tracking, structured logs, HTTP + DB monitoring, distributed tracing, and cron monitoring for Node.js applications.","directories":{},"_nodeVersion":"22.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^24.0.0","react":"^18.3.0","eslint":"^8.57.0","vitest":"^1.3.0","prettier":"^3.2.0","typescript":"^5.3.0","@types/node":"^20.0.0","@types/react":"^18.3.0","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"peerDependencies":{"next":">=13.0.0","vite":">=4.0.0","react":">=16.8.0","webpack":">=5.0.0"},"peerDependenciesMeta":{"next":{"optional":true},"vite":{"optional":true},"react":{"optional":true},"webpack":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/js_0.2.3_1779115523663_0.18669527776927008","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@allstak/js","version":"0.3.0","keywords":["allstak","observability","monitoring","error-tracking","apm","tracing","nodejs"],"license":"MIT","_id":"@allstak/js@0.3.0","maintainers":[{"name":"allstak-","email":"hello@allstak.sa"}],"homepage":"https://allstak.sa","bugs":{"url":"https://github.com/AllStak/allstak-js/issues"},"dist":{"shasum":"994516a1c5732b3a853e4513ecc1ab07439cdaa5","tarball":"https://registry.npmjs.org/@allstak/js/-/js-0.3.0.tgz","fileCount":110,"integrity":"sha512-BJD2mVJv1GIFUCUsZDGDI7MVtuzNdH2Y5qedp7lIN/sNcBkCacVJnNpYYcz8RLEXHoTBCU5AGgt/yxJXGxk4sw==","signatures":[{"sig":"MEUCIQDF59teiRspwpNt2pIuwG3BWpkLRNu76asqelSO/J4jGwIgNu6DDP9j78mm4mqMULuSVSvYyzNMoZzrn7JiojEh2wU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@allstak%2fjs@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6473839},"main":"./dist/node/index.js","_from":"file:allstak-js-0.3.0.tgz","types":"./dist/node/index.d.ts","module":"./dist/node/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/node/index.d.ts","import":"./dist/node/index.mjs","require":"./dist/node/index.js"},"./db":{"types":"./dist/browser/db.d.ts","import":"./dist/browser/db.mjs","require":"./dist/browser/db.js"},"./cron":{"types":"./dist/browser/cron.d.ts","import":"./dist/browser/cron.mjs","require":"./dist/browser/cron.js"},"./next":{"types":"./dist/node/next.d.ts","import":"./dist/node/next.mjs","require":"./dist/node/next.js"},"./vite":{"types":"./dist/node/vite.d.ts","import":"./dist/node/vite.mjs","require":"./dist/node/vite.js"},"./react":{"types":"./dist/browser/react.d.ts","import":"./dist/browser/react.mjs","require":"./dist/browser/react.js"},"./browser":{"types":"./dist/browser/index.d.ts","import":"./dist/browser/index.mjs","require":"./dist/browser/index.js"},"./express":{"types":"./dist/node/express.d.ts","import":"./dist/node/express.mjs","require":"./dist/node/express.js"},"./webpack":{"types":"./dist/node/webpack.d.ts","import":"./dist/node/webpack.mjs","require":"./dist/node/webpack.js"},"./sourcemaps":{"types":"./dist/node/sourcemaps.d.ts","import":"./dist/node/sourcemaps.mjs","require":"./dist/node/sourcemaps.js"},"./react-native":{"types":"./dist/browser/react-native.d.ts","import":"./dist/browser/react-native.mjs","require":"./dist/browser/react-native.js"}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist","format":"prettier --write src","test:watch":"vitest","type-check":"tsc --noEmit","release:check":"pnpm run clean && pnpm run type-check && pnpm run test && pnpm run build && npm pack --dry-run","release:patch":"pnpm run release:check && npm version patch --no-git-tag-version && npm publish --access public","release:publish":"pnpm run release:check && npm publish --access public"},"_npmUser":{"name":"allstak-","email":"hello@allstak.sa"},"_resolved":"/tmp/6dd4148a89f3c45562ac3fd46dd6e58a/allstak-js-0.3.0.tgz","_integrity":"sha512-BJD2mVJv1GIFUCUsZDGDI7MVtuzNdH2Y5qedp7lIN/sNcBkCacVJnNpYYcz8RLEXHoTBCU5AGgt/yxJXGxk4sw==","repository":{"url":"git+https://github.com/AllStak/allstak-js.git","type":"git"},"_npmVersion":"10.8.2","description":"Official AllStak JavaScript/TypeScript SDK — error tracking, structured logs, HTTP + DB monitoring, distributed tracing, and cron monitoring for Node.js applications.","directories":{},"_nodeVersion":"20.20.2","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^24.0.0","react":"^18.3.0","eslint":"^8.57.0","vitest":"^1.3.0","prettier":"^3.2.0","typescript":"^5.3.0","@types/node":"^20.0.0","@types/react":"^18.3.0","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"peerDependencies":{"next":">=13.0.0","vite":">=4.0.0","react":">=16.8.0","webpack":">=5.0.0"},"peerDependenciesMeta":{"next":{"optional":true},"vite":{"optional":true},"react":{"optional":true},"webpack":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/js_0.3.0_1780080132824_0.6342148056468151","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@allstak/js","version":"0.3.1","keywords":["allstak","observability","monitoring","error-tracking","apm","tracing","nodejs"],"license":"MIT","_id":"@allstak/js@0.3.1","maintainers":[{"name":"allstak-","email":"hello@allstak.sa"}],"homepage":"https://allstak.sa","bugs":{"url":"https://github.com/AllStak/allstak-js/issues"},"dist":{"shasum":"b7aeed13fb39f5f654ef0903733d59d8e595b0c9","tarball":"https://registry.npmjs.org/@allstak/js/-/js-0.3.1.tgz","fileCount":110,"integrity":"sha512-xK9uWmylRSimplwGQwQRUZcZ9eBhhrg8/emuJeoRuPgzH1alHcPaSnq8ONz9m0lHaZjUJTsx55ujPXh+VAK6ng==","signatures":[{"sig":"MEUCIQDe7PAjexiVXrQrMS94PmdXpmRvoBfc/YK+ycXAv4v93wIgJRUTAyHhShjl1zZGHbuLR9niSdFaYHwQdNuMNGy8S8M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@allstak%2fjs@0.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6785125},"main":"./dist/node/index.js","_from":"file:allstak-js-0.3.1.tgz","types":"./dist/node/index.d.ts","module":"./dist/node/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/node/index.d.ts","import":"./dist/node/index.mjs","require":"./dist/node/index.js"},"./db":{"types":"./dist/browser/db.d.ts","import":"./dist/browser/db.mjs","require":"./dist/browser/db.js"},"./cron":{"types":"./dist/browser/cron.d.ts","import":"./dist/browser/cron.mjs","require":"./dist/browser/cron.js"},"./next":{"types":"./dist/node/next.d.ts","import":"./dist/node/next.mjs","require":"./dist/node/next.js"},"./vite":{"types":"./dist/node/vite.d.ts","import":"./dist/node/vite.mjs","require":"./dist/node/vite.js"},"./react":{"types":"./dist/browser/react.d.ts","import":"./dist/browser/react.mjs","require":"./dist/browser/react.js"},"./browser":{"types":"./dist/browser/index.d.ts","import":"./dist/browser/index.mjs","require":"./dist/browser/index.js"},"./express":{"types":"./dist/node/express.d.ts","import":"./dist/node/express.mjs","require":"./dist/node/express.js"},"./webpack":{"types":"./dist/node/webpack.d.ts","import":"./dist/node/webpack.mjs","require":"./dist/node/webpack.js"},"./sourcemaps":{"types":"./dist/node/sourcemaps.d.ts","import":"./dist/node/sourcemaps.mjs","require":"./dist/node/sourcemaps.js"},"./react-native":{"types":"./dist/browser/react-native.d.ts","import":"./dist/browser/react-native.mjs","require":"./dist/browser/react-native.js"}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist","format":"prettier --write src","test:watch":"vitest","type-check":"tsc --noEmit","release:check":"pnpm run clean && pnpm run type-check && pnpm run test && pnpm run build && npm pack --dry-run","release:patch":"pnpm run release:check && npm version patch --no-git-tag-version && npm publish --access public","release:publish":"pnpm run release:check && npm publish --access public"},"_npmUser":{"name":"allstak-","email":"hello@allstak.sa"},"_resolved":"/tmp/b69a0ae9924e00309987b5fc35d8c617/allstak-js-0.3.1.tgz","_integrity":"sha512-xK9uWmylRSimplwGQwQRUZcZ9eBhhrg8/emuJeoRuPgzH1alHcPaSnq8ONz9m0lHaZjUJTsx55ujPXh+VAK6ng==","repository":{"url":"git+https://github.com/AllStak/allstak-js.git","type":"git"},"_npmVersion":"10.8.2","description":"Official AllStak JavaScript/TypeScript SDK — error tracking, structured logs, HTTP + DB monitoring, distributed tracing, and cron monitoring for Node.js applications.","directories":{},"_nodeVersion":"20.20.2","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^24.0.0","react":"^18.3.0","eslint":"^8.57.0","vitest":"^1.3.0","prettier":"^3.2.0","typescript":"^5.3.0","@types/node":"^20.0.0","@types/react":"^18.3.0","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"peerDependencies":{"next":">=13.0.0","vite":">=4.0.0","react":">=16.8.0","webpack":">=5.0.0"},"peerDependenciesMeta":{"next":{"optional":true},"vite":{"optional":true},"react":{"optional":true},"webpack":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/js_0.3.1_1780098831110_0.06029435595971755","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@allstak/js","version":"0.3.2","description":"Official AllStak JavaScript/TypeScript SDK — error tracking, structured logs, HTTP + DB monitoring, distributed tracing, and cron monitoring for Node.js applications.","main":"./dist/node/index.js","module":"./dist/node/index.mjs","types":"./dist/node/index.d.ts","exports":{".":{"types":"./dist/node/index.d.ts","import":"./dist/node/index.mjs","require":"./dist/node/index.js"},"./react":{"types":"./dist/browser/react.d.ts","import":"./dist/browser/react.mjs","require":"./dist/browser/react.js"},"./react-native":{"types":"./dist/browser/react-native.d.ts","import":"./dist/browser/react-native.mjs","require":"./dist/browser/react-native.js"},"./browser":{"types":"./dist/browser/index.d.ts","import":"./dist/browser/index.mjs","require":"./dist/browser/index.js"},"./express":{"types":"./dist/node/express.d.ts","import":"./dist/node/express.mjs","require":"./dist/node/express.js"},"./cron":{"types":"./dist/browser/cron.d.ts","import":"./dist/browser/cron.mjs","require":"./dist/browser/cron.js"},"./db":{"types":"./dist/browser/db.d.ts","import":"./dist/browser/db.mjs","require":"./dist/browser/db.js"},"./sourcemaps":{"types":"./dist/node/sourcemaps.d.ts","import":"./dist/node/sourcemaps.mjs","require":"./dist/node/sourcemaps.js"},"./vite":{"types":"./dist/node/vite.d.ts","import":"./dist/node/vite.mjs","require":"./dist/node/vite.js"},"./webpack":{"types":"./dist/node/webpack.d.ts","import":"./dist/node/webpack.mjs","require":"./dist/node/webpack.js"},"./next":{"types":"./dist/node/next.d.ts","import":"./dist/node/next.mjs","require":"./dist/node/next.js"}},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/AllStak/allstak-js.git"},"homepage":"https://allstak.sa","bugs":{"url":"https://github.com/AllStak/allstak-js/issues"},"keywords":["allstak","observability","monitoring","error-tracking","apm","tracing","nodejs"],"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"devDependencies":{"@types/node":"^20.0.0","@types/react":"^18.3.0","@typescript-eslint/eslint-plugin":"^7.0.0","@typescript-eslint/parser":"^7.0.0","eslint":"^8.57.0","jsdom":"^24.0.0","prettier":"^3.2.0","react":"^18.3.0","tsup":"^8.0.0","typescript":"^5.3.0","vitest":"^1.3.0"},"peerDependencies":{"react":">=16.8.0","vite":">=4.0.0","webpack":">=5.0.0","next":">=13.0.0"},"peerDependenciesMeta":{"react":{"optional":true},"vite":{"optional":true},"webpack":{"optional":true},"next":{"optional":true}},"engines":{"node":">=18"},"scripts":{"build":"tsup","test":"vitest run","type-check":"tsc --noEmit","test:watch":"vitest","lint":"eslint src","format":"prettier --write src","clean":"rm -rf dist","release:check":"pnpm run clean && pnpm run type-check && pnpm run test && pnpm run build && npm pack --dry-run","release:publish":"pnpm run release:check && npm publish --access public","release:patch":"pnpm run release:check && npm version patch --no-git-tag-version && npm publish --access public"},"_id":"@allstak/js@0.3.2","_integrity":"sha512-EDO67COSsqpjG5QnMEiJI9+5TTb7wl3/JHG/J8IcUODG2TY7OtO2eUx1c2OLdc1TFBEpy+mUC4jic+K8KxCGlw==","_resolved":"/tmp/786c0b19add5f9782e46f25d1a935d39/allstak-js-0.3.2.tgz","_from":"file:allstak-js-0.3.2.tgz","_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-EDO67COSsqpjG5QnMEiJI9+5TTb7wl3/JHG/J8IcUODG2TY7OtO2eUx1c2OLdc1TFBEpy+mUC4jic+K8KxCGlw==","shasum":"d47738d76c8f7fa3c73e9dbb01faab35659adb57","tarball":"https://registry.npmjs.org/@allstak/js/-/js-0.3.2.tgz","fileCount":110,"unpackedSize":7200777,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@allstak%2fjs@0.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFk1bXDQi/niVedoVCePpSrJqklybP3aAL95Ikwh6KBJAiAw2b3fCCrz0e9SlGBq/IJF4hgLiUq++3/9SdZyTFMXzg=="}]},"_npmUser":{"name":"allstak-","email":"hello@allstak.sa"},"directories":{},"maintainers":[{"name":"allstak-","email":"hello@allstak.sa"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/js_0.3.2_1780754909466_0.8222287137249784"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-23T14:56:56.925Z","modified":"2026-06-06T14:08:29.919Z","0.1.1":"2026-04-23T14:56:57.242Z","0.1.2":"2026-04-23T15:02:39.099Z","0.1.3":"2026-04-23T16:05:44.393Z","0.2.0":"2026-04-28T22:07:12.136Z","0.2.1":"2026-05-11T05:38:08.816Z","0.2.2":"2026-05-11T06:13:59.486Z","0.2.3":"2026-05-18T14:45:23.926Z","0.3.0":"2026-05-29T18:42:13.015Z","0.3.1":"2026-05-29T23:53:51.273Z","0.3.2":"2026-06-06T14:08:29.649Z"},"bugs":{"url":"https://github.com/AllStak/allstak-js/issues"},"license":"MIT","homepage":"https://allstak.sa","keywords":["allstak","observability","monitoring","error-tracking","apm","tracing","nodejs"],"repository":{"type":"git","url":"git+https://github.com/AllStak/allstak-js.git"},"description":"Official AllStak JavaScript/TypeScript SDK — error tracking, structured logs, HTTP + DB monitoring, distributed tracing, and cron monitoring for Node.js applications.","maintainers":[{"name":"allstak-","email":"hello@allstak.sa"}],"readme":"# @allstak/js\n\nAllStak JavaScript SDK for Node.js, Express, browser apps, React helpers, Vite, Webpack, Next.js, logs, request telemetry, spans, and source maps.\n\n## Install\n\n```bash\nnpm install @allstak/js\n```\n\nCreate a project in [app.allstak.sa](https://app.allstak.sa), copy the project API key, and expose it to your app:\n\n```bash\nexport ALLSTAK_API_KEY=ask_live_xxx\nexport ALLSTAK_RELEASE=my-service@1.0.0\n```\n\n## Node.js\n\n```ts\nimport { AllStak } from '@allstak/js';\n\nAllStak.init({\n  apiKey: process.env.ALLSTAK_API_KEY!,\n  environment: process.env.NODE_ENV ?? 'production',\n  release: process.env.ALLSTAK_RELEASE,\n  tags: { service: 'worker' },\n});\n\nAllStak.logger.info('worker started');\n\nawait AllStak.trace('jobs.send-email', async () => {\n  // your work here\n});\n\ntry {\n  throw new Error('payment failed');\n} catch (error) {\n  AllStak.captureException(error as Error);\n}\n\nawait AllStak.flush();\n```\n\n## Express\n\n```ts\nimport express from 'express';\nimport { AllStak } from '@allstak/js';\nimport { allstakExpress } from '@allstak/js/express';\n\nAllStak.init({\n  apiKey: process.env.ALLSTAK_API_KEY!,\n  environment: process.env.NODE_ENV ?? 'production',\n  release: process.env.ALLSTAK_RELEASE,\n  tags: { service: 'api' },\n  httpBodyCapture: {\n    request: true,\n    response: true,\n  },\n});\n\nconst app = express();\napp.use(express.json());\napp.use(allstakExpress.requestHandler());\n\napp.post('/checkout', async (_req, res) => {\n  res.json({ ok: true });\n});\n\napp.use(allstakExpress.errorHandler());\napp.listen(3000);\n```\n\n## Browser\n\n```ts\nimport AllStak from '@allstak/js/browser';\n\nAllStak.init({\n  apiKey: import.meta.env.VITE_ALLSTAK_API_KEY,\n  environment: import.meta.env.MODE,\n  release: import.meta.env.VITE_ALLSTAK_RELEASE,\n  autoBreadcrumbs: true,\n});\n```\n\n## React helpers\n\n`@allstak/js/react` provides lightweight helpers when you want to keep the core JS package:\n\n```tsx\nimport { AllStakErrorBoundary } from '@allstak/js/react';\n\nexport function App() {\n  return (\n    <AllStakErrorBoundary fallback={<p>Something went wrong.</p>}>\n      <AppRoot />\n    </AllStakErrorBoundary>\n  );\n}\n```\n\nFor the full React provider API, install `@allstak/react`.\n\n## Vite source maps\n\n```ts\nimport { defineConfig } from 'vite';\nimport { allstakVitePlugin } from '@allstak/js/vite';\n\nexport default defineConfig({\n  build: { sourcemap: true },\n  plugins: [\n    allstakVitePlugin({\n      release: process.env.ALLSTAK_RELEASE,\n      uploadToken: process.env.ALLSTAK_UPLOAD_TOKEN,\n    }),\n  ],\n});\n```\n\n## Next.js source maps\n\n```js\nconst { withAllStak } = require('@allstak/js/next');\n\nmodule.exports = withAllStak({\n  release: process.env.ALLSTAK_RELEASE,\n  uploadToken: process.env.ALLSTAK_UPLOAD_TOKEN,\n}, {\n  reactStrictMode: true,\n});\n```\n\n## Useful API\n\n```ts\nAllStak.captureException(error);\nAllStak.captureMessage('deploy started', 'info');\nAllStak.logger.warn('payment retry', { orderId: 'ord_123' });\nAllStak.setUser({ id: 'user_123', email: 'user@example.com' });\nAllStak.setTag('region', 'me-central-1');\nAllStak.continueTrace('4bf92f3577b34da6a3ce929d0e0e4736', '00f067aa0ba902b7', true);\nAllStak.startSpan('checkout.authorize').finish('ok');\nawait AllStak.flush();\n```\n\n`continueTrace(traceId, parentSpanId, sampled)` accepts only valid W3C IDs\n(`traceId` = 32 lowercase hex, `parentSpanId` = 16 lowercase hex). It returns\n`false` and leaves the current trace unchanged when inbound IDs are malformed.\n\n## Configuration\n\n| Option | Description |\n| --- | --- |\n| `apiKey` | Project API key from AllStak. |\n| `environment` | Deployment environment, for example `production` or `staging`. |\n| `release` | App version, commit SHA, or build identifier. |\n| `tags` | Tags added to every event. Use `tags.service` for service filtering. |\n| `sampleRate` | Error sample rate from `0` to `1`. |\n| `tracesSampleRate` | Span sample rate from `0` to `1`. |\n| `httpBodyCapture` | Enables request and response body capture with redaction. |\n| `beforeSend` | Optional hook to modify or drop error events before sending. |\n\n## Privacy\n\nThe SDK redacts common sensitive fields such as authorization headers, cookies, passwords, tokens, secrets, and API keys. Keep secrets out of custom metadata and use `beforeSend` for app-specific redaction.\n\n## Troubleshooting\n\n- No events: confirm `ALLSTAK_API_KEY` is set and the project is active.\n- Minified stack traces: set the same `release` in the SDK and source-map upload plugin.\n- App shutdown: call `await AllStak.flush()` before a short-lived process exits.\n- Browser requests blocked: allow `https://api.allstak.sa` in your content security policy.\n\n## Contributing and Support\n\n- Report bugs with the GitHub bug report template: https://github.com/AllStak/allstak-js/issues/new/choose\n- Open pull requests using the checklist in [CONTRIBUTING.md](CONTRIBUTING.md).\n- Report security vulnerabilities privately through [SECURITY.md](SECURITY.md).\n\n## License\n\nMIT\n","readmeFilename":"README.md"}