{"_id":"@arun-syngrid/hippaguard","_rev":"4-b515c62ded8fd5a5d45beabb1bc75a7b","name":"@arun-syngrid/hippaguard","dist-tags":{"latest":"0.1.3"},"versions":{"0.1.0":{"name":"@arun-syngrid/hippaguard","version":"0.1.0","keywords":["react","forms","security","encryption","hipaa","phi","pii","secure-forms","client-side-encryption"],"author":{"name":"Your Name"},"license":"MIT","_id":"@arun-syngrid/hippaguard@0.1.0","maintainers":[{"name":"arun-syngrid","email":"arunpandianj@syngrid.com"}],"homepage":"https://github.com/yourusername/hippaguard#readme","bugs":{"url":"https://github.com/yourusername/hippaguard/issues"},"dist":{"shasum":"524fec9665b8f436cbdcaf303d4cf925bc84b98f","tarball":"https://registry.npmjs.org/@arun-syngrid/hippaguard/-/hippaguard-0.1.0.tgz","fileCount":6,"integrity":"sha512-uccThIXj9nWW/qWu4B+MmaeoWtJ1kmj7FNvW6SLoW1sqInATZXWcrLc7UsTF4TJyf9MN3DcQT80ItX/6pgzegA==","signatures":[{"sig":"MEUCIEgjcL0Y4PTQIT1ImJZanJ2Su8KcvqzlF301ikb6FQYRAiEAjkAddr975GN16GAnzNOiUmv5Er5JiBcSrOBHIs+3JWY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222595},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","scripts":{"lint":"eslint src --ext .ts,.tsx","test":"jest --runInBand --no-cache --detectOpenHandles","build":"rollup -c","test:ci":"jest --ci --coverage --maxWorkers=2","typecheck":"tsc --noEmit","test:watch":"jest --watch","test:coverage":"jest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"arun-syngrid","email":"arunpandianj@syngrid.com"},"repository":{"url":"git+https://github.com/yourusername/hippaguard.git","type":"git"},"_npmVersion":"10.9.3","description":"Secure form handling with client-side encryption for React applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"marked":"^15.0.4","dompurify":"^3.2.3","lucide-react":"^0.469.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.6.4","rollup":"^2.79.1","ts-jest":"^29.1.1","typescript":"^5.2.2","@types/jest":"^29.5.4","@types/react":"^18.2.21","@types/react-dom":"^18.2.7","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.6.4","@testing-library/jest-dom":"^6.1.2","rollup-plugin-typescript2":"^0.35.0","@testing-library/user-event":"^14.4.3"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/hippaguard_0.1.0_1768372243891_0.010694284431793877","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@arun-syngrid/hippaguard","version":"0.1.1","keywords":["react","forms","security","encryption","hipaa","phi","pii","secure-forms","client-side-encryption"],"author":{"name":"Your Name"},"license":"MIT","_id":"@arun-syngrid/hippaguard@0.1.1","maintainers":[{"name":"arun-syngrid","email":"arunpandianj@syngrid.com"}],"homepage":"https://github.com/yourusername/hippaguard#readme","bugs":{"url":"https://github.com/yourusername/hippaguard/issues"},"dist":{"shasum":"e45605d9c2f064ad1ec7cc0e7b5cdd1e0a3bc34d","tarball":"https://registry.npmjs.org/@arun-syngrid/hippaguard/-/hippaguard-0.1.1.tgz","fileCount":6,"integrity":"sha512-lMQHvIduxpH+TlrdFdhcTGX3flEM0Do6CXjbs1Sz7dxSJDY6UHFM+UU16Kmoe7dJBZkpvOdf7znB72tA02JmeA==","signatures":[{"sig":"MEUCIEw4a/zcAjCy+kRZnip4YTASNHrakrL9AkL8/2Z7GtLLAiEA0NVAFM7fBb4l3vq3KaKDpRk4UZiqaaxOJdOpxVN5vG8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":236494},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","scripts":{"lint":"eslint src --ext .ts,.tsx","test":"jest --runInBand --no-cache --detectOpenHandles","build":"rollup -c","test:ci":"jest --ci --coverage --maxWorkers=2","typecheck":"tsc --noEmit","test:watch":"jest --watch","test:coverage":"jest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"arun-syngrid","email":"arunpandianj@syngrid.com"},"repository":{"url":"git+https://github.com/yourusername/hippaguard.git","type":"git"},"_npmVersion":"10.9.3","description":"Secure form handling with client-side encryption for React applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"marked":"^15.0.4","dompurify":"^3.2.3","lucide-react":"^0.469.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.6.4","rollup":"^2.79.1","ts-jest":"^29.1.1","typescript":"^5.2.2","@types/jest":"^29.5.4","@types/react":"^18.2.21","@types/react-dom":"^18.2.7","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.6.4","@testing-library/jest-dom":"^6.1.2","rollup-plugin-typescript2":"^0.35.0","@testing-library/user-event":"^14.4.3"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/hippaguard_0.1.1_1768377612710_0.04297783597094895","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@arun-syngrid/hippaguard","version":"0.1.2","keywords":["react","forms","security","encryption","hipaa","phi","pii","secure-forms","client-side-encryption"],"author":{"name":"Your Name"},"license":"MIT","_id":"@arun-syngrid/hippaguard@0.1.2","maintainers":[{"name":"arun-syngrid","email":"arunpandianj@syngrid.com"}],"homepage":"https://github.com/yourusername/hippaguard#readme","bugs":{"url":"https://github.com/yourusername/hippaguard/issues"},"dist":{"shasum":"740722e6b34381f7c71d5f0f26b14687dc5c0960","tarball":"https://registry.npmjs.org/@arun-syngrid/hippaguard/-/hippaguard-0.1.2.tgz","fileCount":56,"integrity":"sha512-M5aap9s6eu71821GqrAZJd+NnNr+ctGcY+FG0P87dQlUaD9ig78+wo3caySs1NeA3t2/BngbJ5ZbeIMEYRZHPw==","signatures":[{"sig":"MEUCIQCpbDBzC9MhElezPD/mNaT0ndmQKoA02IIC2Sw8ydtCtwIgAWKfbTix1aJcLXVaMjHKZnm16WA7TG37jgXfC6DklXA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":254907},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","scripts":{"lint":"eslint src --ext .ts,.tsx","test":"jest --runInBand --no-cache --detectOpenHandles","build":"rollup -c","test:ci":"jest --ci --coverage --maxWorkers=2","typecheck":"tsc --noEmit","test:watch":"jest --watch","test:coverage":"jest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"arun-syngrid","email":"arunpandianj@syngrid.com"},"repository":{"url":"git+https://github.com/yourusername/hippaguard.git","type":"git"},"_npmVersion":"10.9.3","description":"Secure form handling with client-side encryption for React ts applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"marked":"^15.0.4","dompurify":"^3.2.3","lucide-react":"^0.469.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.6.4","rollup":"^2.79.1","ts-jest":"^29.1.1","typescript":"^5.2.2","@types/jest":"^29.5.4","@types/react":"^18.2.21","@types/react-dom":"^18.2.7","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.6.4","@testing-library/jest-dom":"^6.1.2","rollup-plugin-typescript2":"^0.35.0","@testing-library/user-event":"^14.4.3"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/hippaguard_0.1.2_1768381801397_0.3123833437563417","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@arun-syngrid/hippaguard","version":"0.1.3","description":"Secure form handling with client-side encryption for React ts applications","main":"dist/index.js","module":"dist/index.esm.js","types":"dist/index.d.ts","publishConfig":{"access":"public"},"scripts":{"build":"rollup -c","test":"jest --runInBand --no-cache --detectOpenHandles","test:watch":"jest --watch","test:coverage":"jest --coverage","test:ci":"jest --ci --coverage --maxWorkers=2","prepublishOnly":"npm run build","lint":"eslint src --ext .ts,.tsx","typecheck":"tsc --noEmit"},"keywords":["react","forms","security","encryption","hipaa","phi","pii","secure-forms","client-side-encryption"],"author":{"name":"Your Name"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/yourusername/hippaguard.git"},"bugs":{"url":"https://github.com/yourusername/hippaguard/issues"},"homepage":"https://github.com/yourusername/hippaguard#readme","peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"devDependencies":{"@testing-library/jest-dom":"^6.1.2","@testing-library/react":"^14.0.0","@testing-library/user-event":"^14.4.3","@types/jest":"^29.5.4","@types/react":"^18.2.21","@types/react-dom":"^18.2.7","jest":"^29.6.4","jest-environment-jsdom":"^29.6.4","rollup":"^2.79.1","rollup-plugin-typescript2":"^0.35.0","ts-jest":"^29.1.1","typescript":"^5.2.2"},"dependencies":{"dompurify":"^3.2.3","lucide-react":"^0.469.0","marked":"^15.0.4"},"_id":"@arun-syngrid/hippaguard@0.1.3","_nodeVersion":"22.19.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-p2MpKcsRGi2QkKe54+Zt0zySxwiAITkyfjcj7IQrU942kFLIbAgU2hDoYUpWQ/i/nBbpruqA9KEEoJCMvGPAXg==","shasum":"3306cf7990df1127ada2cf00bc23484f71ff9872","tarball":"https://registry.npmjs.org/@arun-syngrid/hippaguard/-/hippaguard-0.1.3.tgz","fileCount":56,"unpackedSize":254914,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAVVEv/p8TYq7A/4+9U5AW7SK5aH4mPZ70H5Zi0RX5FfAiEA37JHaGvPt/2jxYPXIOSTP1+5e64DWGZc4HGNIxN+I5Y="}]},"_npmUser":{"name":"arun-syngrid","email":"arunpandianj@syngrid.com"},"directories":{},"maintainers":[{"name":"arun-syngrid","email":"arunpandianj@syngrid.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/hippaguard_0.1.3_1771232956267_0.5886603100843368"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-14T06:30:43.639Z","modified":"2026-02-16T09:09:16.517Z","0.1.0":"2026-01-14T06:30:44.034Z","0.1.1":"2026-01-14T08:00:12.862Z","0.1.2":"2026-01-14T09:10:01.550Z","0.1.3":"2026-02-16T09:09:16.406Z"},"bugs":{"url":"https://github.com/yourusername/hippaguard/issues"},"author":{"name":"Your Name"},"license":"MIT","homepage":"https://github.com/yourusername/hippaguard#readme","keywords":["react","forms","security","encryption","hipaa","phi","pii","secure-forms","client-side-encryption"],"repository":{"type":"git","url":"git+https://github.com/yourusername/hippaguard.git"},"description":"Secure form handling with client-side encryption for React ts applications","maintainers":[{"name":"arun-syngrid","email":"arunpandianj@syngrid.com"}],"readme":"# HIPPAGuard 🔒\n\nSecure form handling with client-side encryption for React applications - HIPAA-compliant form components with built-in security.\n\n<p align=\"center\">\n  <img src=\"assets/logo.svg\" width=\"64\" height=\"64\" alt=\"HIPPAGuard Logo\" />\n</p>\n\n[![npm version](https://badge.fury.io/js/@hippaguard%2Freact.svg)](https://badge.fury.io/js/@hippaguard%2Freact)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Test Coverage](https://img.shields.io/badge/coverage-87%25-green.svg)](https://github.com/Anas-debug/HIPPAGuard)\n\n## Overview\n\nHIPPAGuard provides secure form components for handling sensitive healthcare data in React applications. It includes built-in encryption, data protection, and HIPAA compliance features.\n\n## Key Features\n\n- 🔒 Client-side AES-256-GCM encryption\n- ⚕️ HIPAA & PHI/PII data protection \n- 🛡️ Form validation & sanitization\n- 🔄 Simple React hooks API\n- 📝 Full TypeScript support\n- ✅ Extensive test coverage\n- 🚀 Lightweight with minimal dependencies\n- 💪 Built for production use\n\n## Getting Started\n\n### Installation\n\n```sh\nnpm install @hippaguard/react\n```\n\n### Basic Usage\n\n```tsx\nimport { SecureForm, SecureField } from '@hippaguard/react';\n\nfunction PatientForm() {\n  const handleSubmit = async (data) => {\n    // Data is automatically encrypted\n    console.log('Encrypted form data:', data);\n  };\n\n  return (\n    <SecureForm onSubmit={handleSubmit}>\n      <SecureField\n        name=\"firstName\" \n        label=\"First Name\"\n        required\n        sensitivityLevel=\"PHI\"\n      />\n      \n      <SecureTextArea\n        name=\"symptoms\"\n        label=\"Current Symptoms\" \n        sensitivityLevel=\"PHI\"\n      />\n\n      <button type=\"submit\">\n        Submit\n      </button>\n    </SecureForm>\n  );\n}\n```\n\n## Core Components\n\n### SecureField\nStandard input field with encryption and validation.\n\n```tsx\n<SecureField\n  name=\"ssn\"\n  label=\"Social Security Number\" \n  type=\"text\"\n  sensitivityLevel=\"PII\"\n  validateFn={validateSSN}\n  required\n/>\n```\n\n### SecureTextArea\nMultiline text input with encryption.\n\n```tsx\n<SecureTextArea\n  name=\"notes\"\n  label=\"Medical Notes\"\n  rows={4}\n  sensitivityLevel=\"PHI\" \n/>\n```\n\n### SecureCheckbox\nSecure checkbox component.\n\n```tsx\n<SecureCheckbox\n  name=\"consent\"\n  label=\"I consent to treatment\"\n  sensitivityLevel=\"PHI\"\n/>\n```\n\n### SecureRadioGroup\nRadio button group with encryption.\n\n```tsx\n<SecureRadioGroup\n  name=\"gender\"\n  label=\"Gender\"\n  options={['Male', 'Female', 'Other']}\n  sensitivityLevel=\"PHI\"\n/>\n```\n\n## Validation\n\nBuilt-in validation helpers:\n\n```tsx\nimport { validators } from '@hippaguard/react';\n\n<SecureField\n  name=\"email\"\n  validateFn={validators.combine([\n    validators.required(),\n    validators.email()\n  ])}\n/>\n```\n\n## Context & Hooks\n\n### SecurityProvider\nProvides encryption context.\n\n```tsx\nimport { SecurityProvider } from '@hippaguard/react';\n\nfunction App() {\n  return (\n    <SecurityProvider>\n      <YourApp />\n    </SecurityProvider>\n  );\n}\n```\n\n### useSecurity\nAccess encryption functions.\n\n```tsx\nconst { encrypt, decrypt } = useSecurity();\n```\n\n## Security Features\n\n- 🔐 AES-256-GCM encryption\n- 🔑 Unique IV per encryption\n- 🛡️ PBKDF2 key derivation\n- 🧹 Auto key cleanup\n- 🔒 Zero plaintext storage\n- ✅ Input sanitization \n\n## Contributing\n\nWe welcome contributions! Please check our [Contributing Guide](CONTRIBUTING.md).\n\n### Development\n\n1. Clone repo\n```sh\ngit clone https://github.com/Anas-debug/HIPPAGuard.git\n```\n\n2. Install dependencies\n```sh\nnpm install\n```\n\n3. Run tests\n```sh\nnpm test\n```\n\n### Testing\n- Unit tests\n- Integration tests  \n- Security tests\n- Edge cases\n- Current coverage: ~87%\n\n## Support\n\n- 📝 [Documentation](https://github.com/Anas-debug/HIPPAGuard)\n- 🐛 [Issues](https://github.com/Anas-debug/HIPPAGuard/issues)\n- ✉️ [Email](mailto:security@hippaguard.dev)\n\n## License\n\n[MIT](LICENSE) © [Anas Saoui](https://github.com/Anas-debug)","readmeFilename":"README.md"}