{"_id":"@areyouhuman/sdk","name":"@areyouhuman/sdk","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@areyouhuman/sdk","version":"0.1.0","description":"Passive behavioral human verification — replace CAPTCHAs with involuntary micro-signal analysis","main":"dist/index.js","module":"dist/index.mjs","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.js","types":"./dist/index.d.ts"},"./react":{"import":"./dist/react/index.mjs","require":"./dist/react/index.js","types":"./dist/react/index.d.ts"},"./server":{"import":"./dist/server/index.mjs","require":"./dist/server/index.js","types":"./dist/server/index.d.ts"}},"scripts":{"build":"tsup","dev":"tsup --watch","lint":"tsc --noEmit","prepublishOnly":"npm run build"},"keywords":["captcha","human-verification","bot-detection","behavioral-analysis","micro-signals","pointer-jitter","keystroke-dynamics","anti-bot","humansign","areyouhuman","react","privacy-first"],"author":{"name":"HumanSign Protocol"},"license":"MIT","homepage":"https://areyouhuman.io/sdk","repository":{"type":"git","url":"git+https://github.com/AreYouHuman/sdk.git"},"bugs":{"url":"https://github.com/AreYouHuman/sdk/issues"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"devDependencies":{"tsup":"^8.0.0","typescript":"^5.0.0","react":"^18.0.0","react-dom":"^18.0.0","@types/react":"^18.0.0"},"_id":"@areyouhuman/sdk@0.1.0","gitHead":"2fc0d4eba4c19378f2a282ff22d49ddb0a40c253","_nodeVersion":"22.18.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-KazvOLu9F0483YPHsibRUgmqgFCa1x3svDqrgeQkwJqr7+tXZ8dk87WMg0ZlgSlnnJCnuxyTq4Y/RJnmSrnPAw==","shasum":"89c36960bf442e22aea167a911890b83f16451e3","tarball":"https://registry.npmjs.org/@areyouhuman/sdk/-/sdk-0.1.0.tgz","fileCount":15,"unpackedSize":73643,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCIQmctThBV+Jh6oBVKxT0rUrG9JCLLkhUzVbaHrIP54wIgV0q8SR4bA+lMlnNxdR1X7WCLXOfLFcF6UaAka4+yMZ0="}]},"_npmUser":{"name":"myaswin123","email":"aswinfear01@gmail.com"},"directories":{},"maintainers":[{"name":"myaswin123","email":"aswinfear01@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk_0.1.0_1771869425354_0.7641674808158778"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-23T17:57:05.239Z","0.1.0":"2026-02-23T17:57:05.527Z","modified":"2026-02-23T17:57:05.785Z"},"maintainers":[{"name":"myaswin123","email":"aswinfear01@gmail.com"}],"description":"Passive behavioral human verification — replace CAPTCHAs with involuntary micro-signal analysis","homepage":"https://areyouhuman.io/sdk","keywords":["captcha","human-verification","bot-detection","behavioral-analysis","micro-signals","pointer-jitter","keystroke-dynamics","anti-bot","humansign","areyouhuman","react","privacy-first"],"repository":{"type":"git","url":"git+https://github.com/AreYouHuman/sdk.git"},"author":{"name":"HumanSign Protocol"},"bugs":{"url":"https://github.com/AreYouHuman/sdk/issues"},"license":"MIT","readme":"# @areyouhuman/sdk\n\n> Passive behavioral human verification — replace CAPTCHAs with involuntary micro-signal analysis.\n\n[![npm](https://img.shields.io/npm/v/@areyouhuman/sdk)](https://www.npmjs.com/package/@areyouhuman/sdk)\n[![bundle size](https://img.shields.io/bundlephobia/minzip/@areyouhuman/sdk)](https://bundlephobia.com/package/@areyouhuman/sdk)\n[![license](https://img.shields.io/npm/l/@areyouhuman/sdk)](./LICENSE)\n\n📦 12kb gzipped · ⚡ Zero dependencies · 🔒 Privacy-first · 🚫 No cookies\n\n## Quick Start\n\n```bash\nnpm install @areyouhuman/sdk\n```\n\n```tsx\nimport { AreYouHuman } from '@areyouhuman/sdk/react';\n\nfunction LoginPage() {\n  return (\n    <AreYouHuman\n      siteKey=\"ayh_live_xxxxxxxxxxxxxxxx\"\n      onVerified={(token, score) => {\n        // Send token to your backend for server-side verification\n        fetch('/api/verify', { method: 'POST', body: JSON.stringify({ token }) });\n      }}\n      theme=\"dark\"\n    />\n  );\n}\n```\n\n## How It Works\n\nThe SDK captures 5 behavioral signal channels from normal user interactions:\n\n| Channel | Signal |\n|---------|--------|\n| **Pointer Dynamics** | Velocity variance, path curvature from micro-corrections |\n| **Scroll Entropy** | Shannon entropy of scroll velocity distribution |\n| **Keystroke Rhythm** | Inter-key timing coefficient of variation |\n| **Micro-Tremor** | Involuntary oscillation in pointer displacement |\n| **Temporal Coherence** | Cross-channel Pearson correlation |\n\nAll processing runs **entirely in the browser**. No data is sent to any server — only a signed verification token.\n\n## Modes\n\n```tsx\n// Inline — shows progress bar in your form\n<AreYouHuman mode=\"inline\" ... />\n\n// Modal — centered overlay\n<AreYouHuman mode=\"modal\" ... />\n\n// Invisible — zero UI, runs silently\nconst { verify, isVerifying } = useAreYouHuman({ siteKey: '...', mode: 'invisible' });\nconst result = await verify();\n```\n\n## Server Verification\n\nAlways validate tokens on your backend:\n\n```ts\nimport { verify } from '@areyouhuman/sdk/server';\n\nconst result = await verify({\n  token: req.body.token,\n  secretKey: process.env.AYH_SECRET_KEY!,\n});\n\nif (result.success && result.score >= 0.5) {\n  // Human verified ✓\n}\n```\n\n## Express Middleware\n\n```ts\nimport { middleware } from '@areyouhuman/sdk/server';\n\napp.post('/api/submit',\n  middleware({ secretKey: process.env.AYH_SECRET_KEY! }),\n  (req, res) => res.json({ ok: true })\n);\n```\n\n## Full Documentation\n\n👉 [areyouhuman.io/sdk](https://areyouhuman.io/sdk)\n\n## License\n\nMIT © 2026 [HumanSign Protocol](https://humansignprotocol.org)\n","readmeFilename":"README.md","_rev":"1-a2c3bf40e3f5a5e9e42a9e476539e3d4"}