@arun-syngrid/hippaguard
v0.1.2
Published
Secure form handling with client-side encryption for React ts applications
Maintainers
Readme
HIPPAGuard 🔒
Secure form handling with client-side encryption for React applications - HIPAA-compliant form components with built-in security.
Overview
HIPPAGuard provides secure form components for handling sensitive healthcare data in React applications. It includes built-in encryption, data protection, and HIPAA compliance features.
Key Features
- 🔒 Client-side AES-256-GCM encryption
- ⚕️ HIPAA & PHI/PII data protection
- 🛡️ Form validation & sanitization
- 🔄 Simple React hooks API
- 📝 Full TypeScript support
- ✅ Extensive test coverage
- 🚀 Lightweight with minimal dependencies
- 💪 Built for production use
Getting Started
Installation
npm install @hippaguard/reactBasic Usage
import { SecureForm, SecureField } from '@hippaguard/react';
function PatientForm() {
const handleSubmit = async (data) => {
// Data is automatically encrypted
console.log('Encrypted form data:', data);
};
return (
<SecureForm onSubmit={handleSubmit}>
<SecureField
name="firstName"
label="First Name"
required
sensitivityLevel="PHI"
/>
<SecureTextArea
name="symptoms"
label="Current Symptoms"
sensitivityLevel="PHI"
/>
<button type="submit">
Submit
</button>
</SecureForm>
);
}Core Components
SecureField
Standard input field with encryption and validation.
<SecureField
name="ssn"
label="Social Security Number"
type="text"
sensitivityLevel="PII"
validateFn={validateSSN}
required
/>SecureTextArea
Multiline text input with encryption.
<SecureTextArea
name="notes"
label="Medical Notes"
rows={4}
sensitivityLevel="PHI"
/>SecureCheckbox
Secure checkbox component.
<SecureCheckbox
name="consent"
label="I consent to treatment"
sensitivityLevel="PHI"
/>SecureRadioGroup
Radio button group with encryption.
<SecureRadioGroup
name="gender"
label="Gender"
options={['Male', 'Female', 'Other']}
sensitivityLevel="PHI"
/>Validation
Built-in validation helpers:
import { validators } from '@hippaguard/react';
<SecureField
name="email"
validateFn={validators.combine([
validators.required(),
validators.email()
])}
/>Context & Hooks
SecurityProvider
Provides encryption context.
import { SecurityProvider } from '@hippaguard/react';
function App() {
return (
<SecurityProvider>
<YourApp />
</SecurityProvider>
);
}useSecurity
Access encryption functions.
const { encrypt, decrypt } = useSecurity();Security Features
- 🔐 AES-256-GCM encryption
- 🔑 Unique IV per encryption
- 🛡️ PBKDF2 key derivation
- 🧹 Auto key cleanup
- 🔒 Zero plaintext storage
- ✅ Input sanitization
Contributing
We welcome contributions! Please check our Contributing Guide.
Development
- Clone repo
git clone https://github.com/Anas-debug/HIPPAGuard.git- Install dependencies
npm install- Run tests
npm testTesting
- Unit tests
- Integration tests
- Security tests
- Edge cases
- Current coverage: ~87%
Support
- 📝 Documentation
- 🐛 Issues
