verification-layer 0.21.0 โ†’ 0.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/README.md +251 -615
  2. package/dist/cli.js +283 -0
  3. package/dist/cli.js.map +1 -1
  4. package/dist/reporters/audit-report.d.ts.map +1 -1
  5. package/dist/reporters/audit-report.js +180 -0
  6. package/dist/reporters/audit-report.js.map +1 -1
  7. package/dist/reporters/index.d.ts.map +1 -1
  8. package/dist/reporters/index.js +2612 -5
  9. package/dist/reporters/index.js.map +1 -1
  10. package/dist/scan.d.ts.map +1 -1
  11. package/dist/scan.js +14 -1
  12. package/dist/scan.js.map +1 -1
  13. package/dist/scanners/api-security/index.d.ts +7 -0
  14. package/dist/scanners/api-security/index.d.ts.map +1 -0
  15. package/dist/scanners/api-security/index.js +139 -0
  16. package/dist/scanners/api-security/index.js.map +1 -0
  17. package/dist/scanners/api-security/index.test.d.ts +5 -0
  18. package/dist/scanners/api-security/index.test.d.ts.map +1 -0
  19. package/dist/scanners/api-security/index.test.js +360 -0
  20. package/dist/scanners/api-security/index.test.js.map +1 -0
  21. package/dist/scanners/api-security/patterns.d.ts +32 -0
  22. package/dist/scanners/api-security/patterns.d.ts.map +1 -0
  23. package/dist/scanners/api-security/patterns.js +159 -0
  24. package/dist/scanners/api-security/patterns.js.map +1 -0
  25. package/dist/scanners/authentication/index.d.ts +7 -0
  26. package/dist/scanners/authentication/index.d.ts.map +1 -0
  27. package/dist/scanners/authentication/index.js +107 -0
  28. package/dist/scanners/authentication/index.js.map +1 -0
  29. package/dist/scanners/authentication/index.test.d.ts +5 -0
  30. package/dist/scanners/authentication/index.test.d.ts.map +1 -0
  31. package/dist/scanners/authentication/index.test.js +379 -0
  32. package/dist/scanners/authentication/index.test.js.map +1 -0
  33. package/dist/scanners/authentication/patterns.d.ts +32 -0
  34. package/dist/scanners/authentication/patterns.d.ts.map +1 -0
  35. package/dist/scanners/authentication/patterns.js +133 -0
  36. package/dist/scanners/authentication/patterns.js.map +1 -0
  37. package/dist/scanners/configuration/index.d.ts +8 -0
  38. package/dist/scanners/configuration/index.d.ts.map +1 -0
  39. package/dist/scanners/configuration/index.js +87 -0
  40. package/dist/scanners/configuration/index.js.map +1 -0
  41. package/dist/scanners/configuration/index.test.d.ts +5 -0
  42. package/dist/scanners/configuration/index.test.d.ts.map +1 -0
  43. package/dist/scanners/configuration/index.test.js +344 -0
  44. package/dist/scanners/configuration/index.test.js.map +1 -0
  45. package/dist/scanners/configuration/patterns.d.ts +32 -0
  46. package/dist/scanners/configuration/patterns.d.ts.map +1 -0
  47. package/dist/scanners/configuration/patterns.js +146 -0
  48. package/dist/scanners/configuration/patterns.js.map +1 -0
  49. package/dist/scanners/credentials/index.d.ts +7 -0
  50. package/dist/scanners/credentials/index.d.ts.map +1 -0
  51. package/dist/scanners/credentials/index.js +129 -0
  52. package/dist/scanners/credentials/index.js.map +1 -0
  53. package/dist/scanners/credentials/index.test.d.ts +5 -0
  54. package/dist/scanners/credentials/index.test.d.ts.map +1 -0
  55. package/dist/scanners/credentials/index.test.js +395 -0
  56. package/dist/scanners/credentials/index.test.js.map +1 -0
  57. package/dist/scanners/credentials/patterns.d.ts +32 -0
  58. package/dist/scanners/credentials/patterns.d.ts.map +1 -0
  59. package/dist/scanners/credentials/patterns.js +140 -0
  60. package/dist/scanners/credentials/patterns.js.map +1 -0
  61. package/dist/scanners/errors/index.d.ts +8 -0
  62. package/dist/scanners/errors/index.d.ts.map +1 -0
  63. package/dist/scanners/errors/index.js +78 -0
  64. package/dist/scanners/errors/index.js.map +1 -0
  65. package/dist/scanners/errors/index.test.d.ts +5 -0
  66. package/dist/scanners/errors/index.test.d.ts.map +1 -0
  67. package/dist/scanners/errors/index.test.js +330 -0
  68. package/dist/scanners/errors/index.test.js.map +1 -0
  69. package/dist/scanners/errors/patterns.d.ts +27 -0
  70. package/dist/scanners/errors/patterns.d.ts.map +1 -0
  71. package/dist/scanners/errors/patterns.js +97 -0
  72. package/dist/scanners/errors/patterns.js.map +1 -0
  73. package/dist/scanners/hipaa2026/index.d.ts.map +1 -1
  74. package/dist/scanners/hipaa2026/index.js +49 -17
  75. package/dist/scanners/hipaa2026/index.js.map +1 -1
  76. package/dist/scanners/hipaa2026/index.test.js +26 -15
  77. package/dist/scanners/hipaa2026/index.test.js.map +1 -1
  78. package/dist/scanners/operational/index.d.ts +7 -0
  79. package/dist/scanners/operational/index.d.ts.map +1 -0
  80. package/dist/scanners/operational/index.js +171 -0
  81. package/dist/scanners/operational/index.js.map +1 -0
  82. package/dist/scanners/operational/index.test.d.ts +5 -0
  83. package/dist/scanners/operational/index.test.d.ts.map +1 -0
  84. package/dist/scanners/operational/index.test.js +406 -0
  85. package/dist/scanners/operational/index.test.js.map +1 -0
  86. package/dist/scanners/operational/patterns.d.ts +33 -0
  87. package/dist/scanners/operational/patterns.d.ts.map +1 -0
  88. package/dist/scanners/operational/patterns.js +151 -0
  89. package/dist/scanners/operational/patterns.js.map +1 -0
  90. package/dist/scanners/rbac/index.d.ts +7 -0
  91. package/dist/scanners/rbac/index.d.ts.map +1 -0
  92. package/dist/scanners/rbac/index.js +145 -0
  93. package/dist/scanners/rbac/index.js.map +1 -0
  94. package/dist/scanners/rbac/index.test.d.ts +5 -0
  95. package/dist/scanners/rbac/index.test.d.ts.map +1 -0
  96. package/dist/scanners/rbac/index.test.js +422 -0
  97. package/dist/scanners/rbac/index.test.js.map +1 -0
  98. package/dist/scanners/rbac/patterns.d.ts +32 -0
  99. package/dist/scanners/rbac/patterns.d.ts.map +1 -0
  100. package/dist/scanners/rbac/patterns.js +124 -0
  101. package/dist/scanners/rbac/patterns.js.map +1 -0
  102. package/dist/scanners/revocation/index.d.ts +8 -0
  103. package/dist/scanners/revocation/index.d.ts.map +1 -0
  104. package/dist/scanners/revocation/index.js +83 -0
  105. package/dist/scanners/revocation/index.js.map +1 -0
  106. package/dist/scanners/revocation/index.test.d.ts +5 -0
  107. package/dist/scanners/revocation/index.test.d.ts.map +1 -0
  108. package/dist/scanners/revocation/index.test.js +332 -0
  109. package/dist/scanners/revocation/index.test.js.map +1 -0
  110. package/dist/scanners/revocation/patterns.d.ts +27 -0
  111. package/dist/scanners/revocation/patterns.d.ts.map +1 -0
  112. package/dist/scanners/revocation/patterns.js +109 -0
  113. package/dist/scanners/revocation/patterns.js.map +1 -0
  114. package/dist/scanners/sanitization/index.d.ts +8 -0
  115. package/dist/scanners/sanitization/index.d.ts.map +1 -0
  116. package/dist/scanners/sanitization/index.js +98 -0
  117. package/dist/scanners/sanitization/index.js.map +1 -0
  118. package/dist/scanners/sanitization/index.test.d.ts +5 -0
  119. package/dist/scanners/sanitization/index.test.d.ts.map +1 -0
  120. package/dist/scanners/sanitization/index.test.js +370 -0
  121. package/dist/scanners/sanitization/index.test.js.map +1 -0
  122. package/dist/scanners/sanitization/patterns.d.ts +27 -0
  123. package/dist/scanners/sanitization/patterns.d.ts.map +1 -0
  124. package/dist/scanners/sanitization/patterns.js +117 -0
  125. package/dist/scanners/sanitization/patterns.js.map +1 -0
  126. package/dist/training/certificate.d.ts +26 -0
  127. package/dist/training/certificate.d.ts.map +1 -0
  128. package/dist/training/certificate.js +92 -0
  129. package/dist/training/certificate.js.map +1 -0
  130. package/dist/training/index.d.ts +3 -0
  131. package/dist/training/index.d.ts.map +1 -0
  132. package/dist/training/index.js +243 -0
  133. package/dist/training/index.js.map +1 -0
  134. package/dist/training/modules.d.ts +13 -0
  135. package/dist/training/modules.d.ts.map +1 -0
  136. package/dist/training/modules.js +608 -0
  137. package/dist/training/modules.js.map +1 -0
  138. package/dist/training/questions.d.ts +9 -0
  139. package/dist/training/questions.d.ts.map +1 -0
  140. package/dist/training/questions.js +505 -0
  141. package/dist/training/questions.js.map +1 -0
  142. package/dist/types.d.ts +45 -0
  143. package/dist/types.d.ts.map +1 -1
  144. package/dist/utils/npm-audit.d.ts +6 -0
  145. package/dist/utils/npm-audit.d.ts.map +1 -0
  146. package/dist/utils/npm-audit.js +95 -0
  147. package/dist/utils/npm-audit.js.map +1 -0
  148. package/dist/utils/scan-history.d.ts +59 -0
  149. package/dist/utils/scan-history.d.ts.map +1 -0
  150. package/dist/utils/scan-history.js +170 -0
  151. package/dist/utils/scan-history.js.map +1 -0
  152. package/package.json +4 -1
  153. package/templates/baa-verification-letter.md +105 -0
  154. package/templates/irp.md +545 -0
  155. package/templates/notice-of-privacy-practices.md +491 -0
  156. package/templates/physical-safeguards-checklist.md +247 -0
  157. package/templates/security-officer-designation.md +237 -0
package/README.md CHANGED
@@ -1,590 +1,326 @@
1
- # vlayer - HIPAA Compliance Scanner
1
+ # vlayer - HIPAA Compliance on Every Commit
2
2
 
3
- **Automated security scanning for healthcare applications.** Detect PHI exposure, fix vulnerabilities, and generate audit-ready compliance reports.
3
+ **Automated security scanning for healthcare applications.** 163+ detection rules that catch PHI exposures, missing encryption, and access control gaps before they reach production. HIPAA 2026 ready - 15/15 requirements covered.
4
4
 
5
5
  [![CI](https://github.com/Francosimon53/verification-layer/actions/workflows/ci.yml/badge.svg)](https://github.com/Francosimon53/verification-layer/actions/workflows/ci.yml)
6
6
  [![npm version](https://img.shields.io/npm/v/verification-layer)](https://www.npmjs.com/package/verification-layer)
7
+ [![HIPAA 2026](https://img.shields.io/badge/HIPAA%202026-15%2F15%20Ready-brightgreen)](https://vlayer.app)
7
8
  [![License](https://img.shields.io/badge/license-MIT-blue)](LICENSE)
8
9
  [![Node](https://img.shields.io/badge/node-%3E%3D18.0.0-brightgreen)](package.json)
9
10
 
10
11
  ---
11
12
 
12
- ## What is vlayer?
13
-
14
- vlayer is a CLI tool that scans your codebase for HIPAA compliance issues. It's designed for healthcare startups and developers building applications that handle Protected Health Information (PHI).
15
-
16
- **Key capabilities:**
17
- - Scan for 50+ security vulnerabilities and PHI exposure patterns
18
- - **AI Agent Skills scanner** - First HIPAA-focused scanner for SKILL.md files (Claude Code, MCP, Cursor)
19
- - **AI-powered analysis** with Claude API for complex violations and false positive reduction
20
- - Auto-fix common issues with one command
21
- - Generate professional audit reports (HTML, PDF, JSON)
22
- - Detect your tech stack and provide tailored recommendations
23
- - Create cryptographic audit trails for compliance documentation
24
- - **Professional suppression system** with inline comments and justifications
25
- - **Baseline support** to focus on new findings while tracking existing issues
26
- - **Confidence levels** for progressive strictness adoption
27
-
28
- ---
29
-
30
- ## Quick Start
13
+ ## ๐Ÿš€ Quick Start
31
14
 
32
15
  ```bash
33
- # Install
34
- npm install
35
- npm run build
36
-
37
- # Scan a project
38
- node dist/cli.js scan /path/to/your/project
16
+ # Install globally
17
+ npm install -g verification-layer
39
18
 
40
- # Generate HTML report
41
- node dist/cli.js scan /path/to/project -f html -o report.html
19
+ # Or use with npx (no install needed)
20
+ npx vlayer scan ./src
42
21
 
43
- # Auto-fix issues
44
- node dist/cli.js scan /path/to/project --fix
22
+ # Scan with HTML report
23
+ npx vlayer scan ./src -f html -o report.html
45
24
 
46
25
  # Check compliance score
47
- node dist/cli.js score /path/to/project
26
+ npx vlayer score ./src
48
27
 
49
- # Generate auditor-ready report
50
- node dist/cli.js report /path/to/project -o audit-report.html
51
-
52
- # Scan AI Agent Skills (NEW!)
53
- node dist/cli.js skill-scan ~/Downloads/patient-lookup.SKILL.md
28
+ # Auto-fix issues
29
+ npx vlayer scan ./src --fix
54
30
  ```
55
31
 
56
32
  ---
57
33
 
58
- ## ๐Ÿ›ก๏ธ AI Agent Skills Security Scanner
59
-
60
- **vlayer is the first HIPAA-focused security scanner for AI Agent Skills.**
61
-
62
- Protect your healthcare environment from malicious skills before installation:
63
-
64
- ```bash
65
- # Scan before installing any skill
66
- vlayer skill-scan ~/Downloads/patient-exporter.SKILL.md
67
-
68
- # Scan all skills in directory
69
- vlayer skill-scan ~/.claw/skills/
70
-
71
- # CI/CD integration
72
- vlayer skill-scan ./custom-skills/ || exit 1
73
- ```
34
+ ## What is vlayer?
74
35
 
75
- ### The Problem
36
+ vlayer is a CLI tool and platform that scans your codebase for HIPAA compliance issues. Built for healthcare startups and developers building applications that handle Protected Health Information (PHI).
76
37
 
77
- - **36.82%** of AI Agent Skills have security flaws (Snyk, Feb 2026)
78
- - **341 malicious skills** distribute Atomic Stealer malware
79
- - **283 skills** expose credentials in plaintext
80
- - **Zero existing scanners** have HIPAA-specific rules
38
+ **๐ŸŽฏ Key Features:**
39
+ - **163+ detection rules** across 12 categories (PHI exposure, encryption, access control, audit logging, data retention, and more)
40
+ - **HIPAA 2026 NPRM ready** - Covers all 15 new cybersecurity requirements
41
+ - **10 training modules** with 45+ questions and SHA-256 verifiable certificates
42
+ - **5 HIPAA templates** - IRP, BAA, NPP, Security Officer role, Physical Safeguards
43
+ - **Compliance scoring (0-100)** - Track your HIPAA readiness over time
44
+ - **CI/CD integration** - GitHub Actions, pre-commit hooks, PR comments
45
+ - **PDF audit reports** - Executive summaries and technical findings for auditors
46
+ - **VS Code Extension** - Real-time scanning with inline diagnostics
47
+ - **Pro Dashboard** - Historical scans, team management, templates access at [app.vlayer.app](https://app.vlayer.app)
81
48
 
82
- ### What It Detects
49
+ ---
83
50
 
84
- - โœ… PHI exposure (SSN, MRN, DOB in examples)
85
- - โœ… Hardcoded credentials (API keys, passwords)
86
- - โœ… Malicious patterns (reverse shells, data exfiltration)
87
- - โœ… HIPAA violations (HTTP transmission, no audit logging)
51
+ ## ๐ŸŒ Links
88
52
 
89
- ### Example Output
53
+ - **Landing**: [vlayer.app](https://vlayer.app) - Product overview and pricing
54
+ - **Dashboard**: [app.vlayer.app](https://app.vlayer.app) - Pro dashboard with historical scans and team management
55
+ - **Documentation**: [docs.vlayer.app](https://docs.vlayer.app) - Complete guides and API reference
56
+ - **GitHub**: [github.com/Francosimon53/verification-layer](https://github.com/Francosimon53/verification-layer) - Open source CLI
57
+ - **npm**: [npmjs.com/package/verification-layer](https://www.npmjs.com/package/verification-layer) - Install the scanner
90
58
 
91
- ```
92
- ๐Ÿšจ Critical: 7 | โš ๏ธ High: 14 | โšก Medium: 1
59
+ ---
93
60
 
94
- Issues:
95
- PHI Exposure: 8
96
- Credential Leaks: 1
97
- Data Exfiltration: 1
61
+ ## ๐Ÿ’ฐ Pricing
98
62
 
99
- โŒ DO NOT INSTALL THIS SKILL
100
- Critical HIPAA violations detected.
101
- ```
63
+ | Plan | Price | Features |
64
+ |------|-------|----------|
65
+ | **Open Source** | **$0/forever** | Full scanner, CLI, 163+ rules, compliance scoring, training module, community support |
66
+ | **Pro** | **$49/month** ($490/year) | Everything in OSS + GitHub App with PR comments, pre-commit hooks, historical scan dashboard, HIPAA document templates, team tracking (10 users), PDF audit reports, email support (48h SLA). **14-day free trial** |
67
+ | **Enterprise** | **Custom** | Everything in Pro + custom detection rules, self-hosted deployment, SSO/RBAC integration, dedicated compliance consultant, custom training modules, audit preparation support, priority support (4h SLA). Contact: [sales@vlayer.app](mailto:sales@vlayer.app) |
102
68
 
103
- ๐Ÿ“– **[Full Documentation](docs/SKILLS-SCANNER.md)**
69
+ [Start Free Trial](https://app.vlayer.app/pricing) โ€ข [View Pricing](https://vlayer.app/#pricing)
104
70
 
105
71
  ---
106
72
 
107
- ## ๐ŸŒ VLayer Ecosystem
108
-
109
- **Dashboard**: [https://app.vlayer.app](https://app.vlayer.app) - Compliance monitoring platform
110
- **Playground**: [https://play.vlayer.app](https://play.vlayer.app) - Try vlayer in your browser
111
- **Documentation**: [https://docs.vlayer.app](https://docs.vlayer.app) - Complete guides and API reference
112
- **Landing Page**: [https://vlayer.app](https://vlayer.app) - Marketing site
113
-
114
- Enterprise-grade HIPAA compliance monitoring platform for tracking violations, compliance scores, and generating audit reports.
115
-
116
- ### Design
117
-
118
- **Professional Enterprise UI:**
119
- - ๐ŸŽจ **Dark Navy Theme** - Professional color palette (#0A1628, #0F172A) with emerald/teal accents
120
- - ๐Ÿ“ **Fixed Sidebar Navigation** - Icon-based menu with VLayer branding and system status
121
- - ๐Ÿ’Ž **Glassmorphism Effects** - Gradient cards with subtle shadows and transparency
122
- - ๐ŸŽฏ **Circular Progress Gauges** - Animated SVG gauges for compliance scores (0-100)
123
- - ๐Ÿท๏ธ **Status Badges** - Color-coded indicators (Compliant/At Risk/Critical)
124
- - โšก **Smooth Transitions** - Hover effects and state changes with professional animations
125
-
126
- ### Features
127
-
128
- - ๐Ÿ” **Supabase Authentication** - Secure email/password authentication with session management
129
- - ๐Ÿ“Š **Visual Compliance Dashboard** - 4-metric overview with real-time scores and status distribution
130
- - ๐Ÿ“ˆ **Historical Score Tracking** - Interactive charts showing compliance trends over time
131
- - ๐Ÿ—‚๏ธ **Multi-Project Management** - Monitor unlimited projects with inline progress indicators
132
- - ๐Ÿ” **Detailed Findings View** - Filter by severity with comprehensive issue breakdowns
133
- - ๐Ÿ“‹ **Executive Summaries** - Professional reports with grade assignments (A-F)
134
- - ๐ŸŽจ **Enterprise Tables** - Sortable project lists with circular scores and status badges
135
- - ๐Ÿ“ฑ **Responsive Design** - Optimized for desktop, tablet, and mobile devices
136
- - ๐Ÿ‘ค **User Management** - User profiles with logout functionality in sidebar
137
-
138
- ### Quick Start
139
-
140
- 1. **Create Account**: Sign up at [app.vlayer.app/signup](https://app.vlayer.app/signup) with your email
141
- 2. **Login**: Access the dashboard at [app.vlayer.app](https://app.vlayer.app)
142
- 3. **Create Project**: Click "+ New Project" and enter your project details
143
- 4. **Run Scan**: Execute a compliance scan on your codebase
144
- ```bash
145
- node dist/cli.js scan ./src --format json --output scan.json
146
- ```
147
- 5. **Upload Results**: Send scan data to your project via API
148
- ```bash
149
- curl -X POST https://app.vlayer.app/api/projects/{projectId}/scans \
150
- -H "Content-Type: application/json" \
151
- -d @scan.json
152
- ```
153
-
154
- ### Demo Data
155
-
156
- The dashboard includes 4 demo projects with realistic compliance data:
157
- - **HealthCare Portal** - 92/100 (Grade A - Excellent)
158
- - **Telemedicine API** - 78/100 (Grade C - Fair)
159
- - **Insurance Claims System** - 56/100 (Grade F - Critical)
160
- - **Mobile Health App** - 95/100 (Grade A - Excellent)
161
-
162
- ### API & Documentation
163
-
164
- See [dashboard/README.md](dashboard/README.md) for complete API documentation and deployment instructions.
73
+ ## ๐Ÿ›ก๏ธ HIPAA 2026 Ready
74
+
75
+ The new HIPAA Security Rule (NPRM 2026) adds 15 cybersecurity requirements. vlayer covers **all 15**:
76
+
77
+ โœ… Network Segmentation
78
+ โœ… Encryption Standards
79
+ โœ… Multi-Factor Auth
80
+ โœ… Audit Log Monitoring
81
+ โœ… Incident Response
82
+ โœ… Vulnerability Scanning
83
+ โœ… Asset Inventory
84
+ โœ… Access Controls
85
+ โœ… Data Minimization
86
+ โœ… Secure Configuration
87
+ โœ… Patch Management
88
+ โœ… Risk Assessments
89
+ โœ… Business Continuity
90
+ โœ… Security Training
91
+ โœ… Third-Party Risk
92
+
93
+ **Non-Compliance Costs:**
94
+ - $2M average breach cost
95
+ - $100-$50K per violation (Tier 1-4)
96
+ - $1.5M annual cap per violation type
97
+ - Criminal penalties: $250K + 10 years jail
165
98
 
166
99
  ---
167
100
 
168
- ## ๐Ÿ†• Compliance Score & Dashboard
169
-
170
- ### HIPAA Compliance Score (0-100)
101
+ ## ๐Ÿ“Š Detection Categories
171
102
 
172
- VLayer calculates a compliance score based on findings weighted by severity and confidence:
173
-
174
- ```bash
175
- # Calculate compliance score
176
- node dist/cli.js score ./src
103
+ vlayer scans for **163+ security patterns** across 12 HIPAA compliance categories:
177
104
 
178
- # Output as JSON
179
- node dist/cli.js score ./src -f json
180
- ```
105
+ | Category | Rules | What it detects |
106
+ |----------|-------|-----------------|
107
+ | **PHI Exposure** | 28 | SSN/MRN in code, PHI in logs, localStorage, URLs, diagnosis codes, unencrypted patient data |
108
+ | **Encryption** | 18 | Weak crypto (MD5, DES), disabled SSL/TLS, HTTP URLs, missing at-rest encryption |
109
+ | **Access Control** | 24 | SQL injection, XSS, CORS wildcards, hardcoded credentials, IDOR vulnerabilities, missing auth |
110
+ | **Audit Logging** | 15 | Missing logging framework, unlogged PHI operations, insufficient audit trails |
111
+ | **Data Retention** | 12 | Bulk deletes without audit, missing retention policies, improper data deletion |
112
+ | **Network Segmentation** | 14 | Missing network isolation, insecure API endpoints, unrestricted PHI access |
113
+ | **Multi-Factor Auth** | 8 | Missing MFA, weak authentication, password-only access to PHI |
114
+ | **Incident Response** | 10 | Missing IRP, unmonitored security events, no breach notification process |
115
+ | **Vulnerability Management** | 11 | Unpatched dependencies, missing security updates, known CVEs |
116
+ | **Asset Inventory** | 9 | Undocumented PHI storage, shadow IT, untracked data flows |
117
+ | **Session Management** | 8 | Weak session configs, missing timeouts, insecure cookies |
118
+ | **Third-Party Risk** | 6 | Unsafe vendor integrations, missing BAAs, unvetted third-party code |
181
119
 
182
- **Scoring System:**
183
- - ๐Ÿ”ด Critical: -10 points each
184
- - ๐ŸŸ  High: -5 points each
185
- - ๐ŸŸก Medium: -2 points each
186
- - ๐Ÿ”ต Low: -1 point each
187
- - โœ… Acknowledged findings: 25% penalty reduction
120
+ **Total: 163+ rules**
188
121
 
189
- **Grading:**
190
- - A (90-100): Excellent compliance posture
191
- - B (80-89): Good compliance
192
- - C (70-79): Fair compliance
193
- - D (60-69): Poor compliance
194
- - F (<60): Critical - requires immediate attention
122
+ ---
195
123
 
196
- ### Auditor-Ready Reports
124
+ ## ๐ŸŽ“ Training Module
197
125
 
198
- Generate professional compliance reports with SHA256 hash verification:
126
+ Turn your developers into HIPAA-aware engineers with built-in training:
199
127
 
200
128
  ```bash
201
- # Basic auditor report
202
- node dist/cli.js report ./src
203
-
204
- # Full-featured report
205
- node dist/cli.js report ./src \
206
- -o compliance-report.html \
207
- --org "HealthTech Inc" \
208
- --period "Q1 2024" \
209
- --auditor "John Doe" \
210
- --include-baseline
129
+ vlayer train
211
130
  ```
212
131
 
213
- **Report Features:**
214
- - ๐Ÿ“Š Compliance score with visual gauge (green/yellow/red)
215
- - ๐Ÿ“ˆ Executive summary with key metrics
216
- - ๐Ÿ“‹ Findings table with filtering by severity
217
- - ๐Ÿ”’ Suppression and acknowledgment audit trails
218
- - ๐Ÿ“„ Baseline comparison (if enabled)
219
- - ๐Ÿ” SHA256 hash for document integrity
220
- - ๐Ÿ–จ๏ธ Print-friendly CSS for PDF export
132
+ - **10 interactive modules** covering HIPAA fundamentals, technical safeguards, and best practices
133
+ - **45+ quiz questions** with immediate feedback
134
+ - **SHA-256 verifiable certificates** for audit documentation
135
+ - Track team progress and completion rates (Pro plan)
136
+
137
+ **Topics covered:**
138
+ - HIPAA Privacy & Security Rules
139
+ - PHI identification and handling
140
+ - Encryption standards and implementation
141
+ - Access controls and authentication
142
+ - Audit logging and monitoring
143
+ - Incident response procedures
144
+ - Business Associate Agreements
145
+ - Data breach notification requirements
146
+ - Physical and technical safeguards
147
+ - Compliance penalties and enforcement
221
148
 
222
149
  ---
223
150
 
224
- ## ๐Ÿ†• IDE & Developer Experience
225
-
226
- ### VS Code Extension
151
+ ## ๐Ÿ“„ HIPAA Templates
227
152
 
228
- Get real-time HIPAA compliance feedback directly in your editor:
153
+ 5 production-ready policy templates (Pro plan):
229
154
 
230
155
  ```bash
231
- # Install from the vscode-extension directory
232
- cd vscode-extension
233
- npm install
234
- npm run compile
156
+ vlayer templates list
157
+ vlayer templates export irp
235
158
  ```
236
159
 
237
- **Features:**
238
- - โœ… Real-time scanning on file save
239
- - โœ… Inline diagnostics with severity markers
240
- - โœ… Hover tooltips with HIPAA references and recommendations
241
- - โœ… Quick-fix actions for auto-remediation
242
- - โœ… Status bar compliance score
243
- - โœ… Commands: "VLayer: Scan Current File", "VLayer: Scan Workspace"
160
+ | Template | Description |
161
+ |----------|-------------|
162
+ | **Incident Response Plan (IRP)** | Step-by-step breach response procedures |
163
+ | **Business Associate Agreement (BAA)** | Standard BAA for third-party vendors |
164
+ | **Notice of Privacy Practices (NPP)** | Patient rights and PHI usage disclosure |
165
+ | **Security Officer Role** | Responsibilities and authority documentation |
166
+ | **Physical Safeguards** | Facility access controls and workstation security |
244
167
 
245
- **Configuration:**
246
- ```json
247
- {
248
- "vlayer.enableAutoScan": true,
249
- "vlayer.minConfidence": "low",
250
- "vlayer.showStatusBar": true,
251
- "vlayer.configPath": ".vlayerrc.json"
252
- }
253
- ```
254
-
255
- ### Watch Mode
256
-
257
- Continuous monitoring with real-time feedback:
258
-
259
- ```bash
260
- # Watch a directory for changes
261
- node dist/cli.js watch ./src
262
-
263
- # Watch with specific categories
264
- node dist/cli.js watch ./src --categories phi-exposure encryption
265
-
266
- # Watch with custom config
267
- node dist/cli.js watch ./src --config .vlayerrc.json
268
- ```
269
-
270
- **Features:**
271
- - ๐Ÿ” Automatic scan on file save/create
272
- - ๐ŸŽจ Colored terminal output by severity
273
- - ๐Ÿ“Š Diff tracking (new findings vs. previous scan)
274
- - ๐Ÿšจ Alerts for new critical/high severity findings
275
- - โšก Smart file filtering (excludes node_modules, dist, etc.)
168
+ All templates are:
169
+ - โœ… HIPAA-compliant and audit-ready
170
+ - โœ… Customizable to your organization
171
+ - โœ… Available in Word and PDF formats
172
+ - โœ… Regularly updated for regulatory changes
276
173
 
277
174
  ---
278
175
 
279
- ## Suppression & Baseline
280
-
281
- ### Inline Suppressions
282
-
283
- Suppress specific findings with inline comments (justification required):
176
+ ## ๐Ÿ”ง CLI Commands
284
177
 
285
- ```typescript
286
- // vlayer-ignore phi-ssn-hardcoded -- Test data for unit tests
287
- const testSSN = "123-45-6789";
288
- ```
178
+ ```bash
179
+ # Scanning
180
+ vlayer scan <path> # Basic scan
181
+ vlayer scan <path> -f html -o report.html # HTML report
182
+ vlayer scan <path> -f markdown -o report.md # Markdown report
183
+ vlayer scan <path> --fix # Auto-fix issues
184
+ vlayer scan <path> -c phi-exposure encryption # Specific categories
289
185
 
290
- ### Baseline for Existing Codebases
186
+ # Compliance Score
187
+ vlayer score <path> # Calculate compliance score (0-100)
188
+ vlayer score <path> -f json # JSON output
291
189
 
292
- Generate a baseline to track existing findings without blocking progress:
190
+ # Watch Mode
191
+ vlayer watch <path> # Watch for changes
192
+ vlayer watch <path> -c phi-exposure # Watch specific categories
293
193
 
294
- ```bash
295
- # Generate baseline from current state
296
- node dist/cli.js baseline . -o .vlayer-baseline.json
194
+ # Audit Reports
195
+ vlayer report <path> # Generate auditor-ready report
196
+ vlayer report <path> -o report.html # Custom output path
197
+ vlayer report <path> --org "Company" # Set organization name
297
198
 
298
- # Scan with baseline (only NEW findings cause failures)
299
- node dist/cli.js scan . --baseline .vlayer-baseline.json
300
- ```
199
+ # Training
200
+ vlayer train # Start interactive training
201
+ vlayer train --module 2 # Specific module
202
+ vlayer train --certificate # Generate certificate
301
203
 
302
- ### Confidence Levels
204
+ # Templates (Pro)
205
+ vlayer templates list # List available templates
206
+ vlayer templates export irp # Export Incident Response Plan
207
+ vlayer templates export baa # Export Business Associate Agreement
303
208
 
304
- Filter findings by confidence level for progressive adoption:
209
+ # Baseline
210
+ vlayer baseline <path> # Generate baseline
211
+ vlayer scan <path> --baseline .vlayer-baseline.json # Scan with baseline
305
212
 
306
- ```bash
307
- # Only fail on high-confidence findings
308
- node dist/cli.js scan . --min-confidence high
213
+ # Configuration
214
+ vlayer init # Generate .vlayerrc.json
309
215
  ```
310
216
 
311
- ---
312
-
313
- ## Features
314
-
315
- ### 1. Vulnerability Detection
316
-
317
- Scans for **50+ security patterns** across 5 HIPAA compliance categories:
318
-
319
- | Category | What it detects |
320
- |----------|-----------------|
321
- | **PHI Exposure** | SSN/MRN in code, PHI in logs, localStorage, URLs |
322
- | **Encryption** | Weak crypto (MD5, DES), disabled SSL/TLS, HTTP URLs |
323
- | **Access Control** | SQL injection, XSS, CORS wildcards, hardcoded credentials |
324
- | **Audit Logging** | Missing logging framework, unlogged PHI operations |
325
- | **Data Retention** | Bulk deletes without audit, missing retention policies |
326
-
327
- <details>
328
- <summary><strong>View all detection patterns</strong></summary>
329
-
330
- **PHI Exposure (18 patterns)**
331
- - Social Security Numbers (XXX-XX-XXXX)
332
- - Medical Record Numbers (MRN patterns)
333
- - Date of Birth handling
334
- - Diagnosis codes (ICD-10)
335
- - PHI in console.log statements
336
- - PHI in localStorage/sessionStorage
337
- - Patient data in URLs
338
- - Unencrypted patient contact info
339
-
340
- **Security Vulnerabilities (20+ patterns)**
341
- - Hardcoded passwords and secrets
342
- - API keys (generic, Stripe, AWS)
343
- - Database URIs with credentials
344
- - SQL injection (template literals & concatenation)
345
- - innerHTML without sanitization
346
- - eval() and Function constructor
347
- - dangerouslySetInnerHTML in React
348
-
349
- **Infrastructure Issues**
350
- - HTTP URLs for PHI transmission
351
- - Disabled SSL/TLS verification
352
- - CORS wildcard origins
353
- - Sessions without expiration
354
- - Missing authentication checks
355
-
356
- </details>
217
+ **Exit codes:**
218
+ - `0` - No critical issues
219
+ - `1` - Critical issues found (useful for CI/CD)
357
220
 
358
221
  ---
359
222
 
360
- ### 2. Auto-Fix (`--fix`)
361
-
362
- Automatically remediate common vulnerabilities:
223
+ ## โš™๏ธ CI/CD Integration
363
224
 
364
- ```bash
365
- node dist/cli.js scan ./my-app --fix
366
- ```
225
+ ### GitHub Actions
367
226
 
368
- | Issue | Auto-Fix Applied |
369
- |-------|------------------|
370
- | SQL injection | Convert to parameterized query `query('SELECT * FROM users WHERE id = ?', [id])` |
371
- | Hardcoded password | Replace with `process.env.PASSWORD` |
372
- | Hardcoded API key | Replace with `process.env.API_KEY` |
373
- | HTTP URL | Upgrade to HTTPS |
374
- | innerHTML | Replace with `textContent` |
375
- | PHI in console.log | Comment out with review marker |
227
+ ```yaml
228
+ name: HIPAA Compliance
229
+ on: [push, pull_request]
376
230
 
377
- **Example output:**
231
+ jobs:
232
+ vlayer-scan:
233
+ runs-on: ubuntu-latest
234
+ steps:
235
+ - uses: actions/checkout@v3
236
+ - uses: actions/setup-node@v3
237
+ with:
238
+ node-version: '18'
239
+ - run: npx vlayer scan ./src
378
240
  ```
379
- โœ” Scan complete. Found 29 issues.
380
- โœ” Applied 8 automatic fixes.
381
-
382
- Changes by file:
383
- src/api/users.ts
384
- Line 45: SQL injection โ†’ parameterized query
385
- Line 89: Hardcoded password โ†’ process.env.DB_PASSWORD
386
- src/utils/logger.ts
387
- Line 12: PHI in console.log โ†’ commented out
388
- ```
389
-
390
- ---
391
241
 
392
- ### 3. Stack Detection
242
+ ### Pre-commit Hook
393
243
 
394
- vlayer automatically detects your tech stack and provides **personalized code examples**:
244
+ ```bash
245
+ # Install pre-commit hook
246
+ npx vlayer install-hook
395
247
 
396
- ```
397
- Stack detected:
398
- Framework: Next.js
399
- Database: Supabase
400
- Auth: Supabase Auth
248
+ # .git/hooks/pre-commit will now run vlayer on staged files
401
249
  ```
402
250
 
403
- **Supported technologies:**
251
+ ### Pull Request Comments (Pro)
404
252
 
405
- | Type | Detected |
406
- |------|----------|
407
- | Frameworks | Next.js, React, Vue, Nuxt, Angular, Express, Fastify, NestJS |
408
- | Databases | Supabase, Firebase, PostgreSQL, MySQL, MongoDB, Prisma, Drizzle |
409
- | Auth | NextAuth, Supabase Auth, Firebase Auth, Auth0, Clerk, Passport |
410
-
411
- **Stack-specific recommendations include:**
412
-
413
- - **Next.js + Supabase**: Server Components for PHI, Row Level Security (RLS), middleware protection
414
- - **Express + PostgreSQL**: express-session with Redis, parameterized queries
415
- - **React + Firebase**: Firestore Security Rules, Admin SDK for PHI
253
+ Install the [vlayer GitHub App](https://app.vlayer.app) to get automatic PR comments with compliance findings.
416
254
 
417
255
  ---
418
256
 
419
- ### 4. Remediation Guides
257
+ ## ๐Ÿ“Š Compliance Dashboard (Pro)
420
258
 
421
- Each finding includes a detailed remediation guide with:
259
+ Access historical scans, team management, and audit reports at [app.vlayer.app](https://app.vlayer.app):
422
260
 
423
- - **HIPAA Impact**: Why this matters for compliance
424
- - **Multiple fix options**: Different approaches with trade-offs
425
- - **Code examples**: Copy-paste ready solutions
426
- - **Documentation links**: Official resources
261
+ - **Historical Scans** - Track compliance trends over time
262
+ - **Team Management** - Invite team members (10 seats on Pro)
263
+ - **Templates Library** - Access all 5 HIPAA document templates
264
+ - **PDF Reports** - Generate audit-ready reports
265
+ - **Training Dashboard** - Track team training completion
266
+ - **Compliance Score Tracking** - Monitor your 0-100 score over time
427
267
 
428
- The guides are **personalized to your stack** - if you're using Supabase, you'll see Supabase-specific code examples, not generic SQL.
268
+ **Features:**
269
+ - Dark theme with professional UI
270
+ - Filter findings by severity and category
271
+ - Export data in JSON, CSV, or PDF
272
+ - Email notifications for critical findings
273
+ - Integration with Slack/Teams (coming soon)
429
274
 
430
275
  ---
431
276
 
432
- ### 5. Audit Trail & PDF Reports
277
+ ## ๐Ÿ” VS Code Extension
433
278
 
434
- Generate compliance documentation with cryptographic verification:
279
+ Real-time HIPAA compliance feedback in your editor:
435
280
 
436
281
  ```bash
437
- # Run scan with fixes (creates audit trail)
438
- node dist/cli.js scan ./my-app --fix
439
-
440
- # Generate PDF report
441
- node dist/cli.js audit ./my-app --generate-report --org "Healthcare Inc" --auditor "Jane Smith"
282
+ # Install from the vscode-extension directory
283
+ cd vscode-extension
284
+ npm install
285
+ npm run compile
442
286
  ```
443
287
 
444
- **Audit trail includes:**
445
-
446
- | For Auto-Fixed Issues | For Manual Review Items |
447
- |-----------------------|-------------------------|
448
- | Code before & after | Status: "Pending human review" |
449
- | SHA256 file hashes | Assigned responsible party |
450
- | Timestamp of change | Suggested deadline by severity |
451
- | HIPAA reference resolved | Full finding details |
452
-
453
- **PDF Report sections:**
454
- 1. Cover Page - Project info, scan statistics
455
- 2. Executive Summary - Remediation rate, risk breakdown
456
- 3. Fix Evidence - Cryptographic proof of each change
457
- 4. Manual Reviews - Pending items with deadlines
458
- 5. Verification Page - Report hash, signature fields
288
+ **Features:**
289
+ - โœ… Real-time scanning on file save
290
+ - โœ… Inline diagnostics with severity markers
291
+ - โœ… Hover tooltips with HIPAA references
292
+ - โœ… Quick-fix actions for auto-remediation
293
+ - โœ… Status bar compliance score
294
+ - โœ… Commands: "VLayer: Scan Current File", "VLayer: Scan Workspace"
459
295
 
460
296
  ---
461
297
 
462
- ### 6. AI-Powered Scanning (Beta)
463
-
464
- **Reduce false positives and catch complex violations with Claude AI.**
465
-
466
- vlayer now includes optional AI-powered analysis using Anthropic's Claude API:
467
-
468
- #### Features
469
-
470
- - **๐Ÿค– LLM-Powered Rules**: 6 specialized AI rules for detecting complex HIPAA violations
471
- - **๐ŸŽฏ AI Triage**: Automatically classify findings to reduce false positives by 50%+
472
- - **๐Ÿ”’ PHI Scrubbing**: All code is sanitized before sending to the LLM (HIPAA-safe)
473
- - **๐Ÿ’ฐ Cost Control**: Budget limits, caching, and rate limiting built-in
474
- - **๐Ÿ“Š Confidence Scores**: AI provides reasoning and confidence for each finding
298
+ ## ๐Ÿค– AI-Powered Scanning (Optional)
475
299
 
476
- #### Quick Start
300
+ Reduce false positives and catch complex violations with Claude AI:
477
301
 
478
302
  ```bash
479
- # Set your API key
303
+ # Set API key
480
304
  export ANTHROPIC_API_KEY="sk-ant-..."
481
305
 
482
- # Run AI-powered scan (default: 50ยข budget)
483
- node dist/cli.js ai-scan ./my-app
306
+ # Run AI-powered scan
307
+ vlayer ai-scan ./src
484
308
 
485
309
  # Adjust budget
486
- node dist/cli.js ai-scan ./my-app --budget 100
487
-
488
- # Run LLM rules only (skip triage)
489
- node dist/cli.js ai-scan ./my-app --rules-only
490
-
491
- # Enable AI triage in regular scan
492
- node dist/cli.js scan ./my-app # AI triage runs automatically if API key is set
493
-
494
- # Disable AI features
495
- node dist/cli.js scan ./my-app --no-ai
496
- ```
497
-
498
- #### AI Rules
499
-
500
- The AI scanner includes 6 specialized rules:
501
-
502
- | Rule ID | Name | Detects |
503
- |---------|------|---------|
504
- | **HIPAA-PHI-003** | Minimum Necessary Access | APIs returning more PHI than needed (SELECT * violations) |
505
- | **HIPAA-SEC-001** | PHI Encryption | Unencrypted PHI in transit or at rest |
506
- | **HIPAA-ACCESS-001** | Role-Based Access Control | Missing auth checks, hardcoded roles, IDOR vulnerabilities |
507
- | **HIPAA-AUDIT-001** | Audit Logging | PHI operations without proper audit trails |
508
- | **HIPAA-RETENTION-001** | Data Retention | Improper deletion, missing retention policies |
509
- | **HIPAA-AUTH-001** | Session Management | Weak session configs, missing timeouts |
510
-
511
- #### Configuration
512
-
513
- Add AI settings to `.vlayerrc.json`:
514
-
515
- ```json
516
- {
517
- "ai": {
518
- "enabled": true,
519
- "enableTriage": true,
520
- "enableLLMRules": true,
521
- "filterFalsePositives": true,
522
- "budgetCents": 50
523
- }
524
- }
525
- ```
526
-
527
- #### Cost & Performance
528
-
529
- - **Typical scan**: 5-20 API calls, $0.10-$0.50
530
- - **Caching**: Results cached for 24 hours by file hash
531
- - **Rate limiting**: Max 20 calls/minute, 50 calls/scan
532
- - **PHI protection**: All sensitive data scrubbed before API call
533
-
534
- **Example output:**
535
- ```
536
- ๐Ÿค– Starting AI-powered HIPAA scan...
537
- ๐Ÿ”’ Scrubbed 3 PHI patterns from src/api/patients.ts
538
- ๐Ÿ“‹ Running 6 LLM-powered rules...
539
- โœ… AI scan complete: 12 findings, 48ยข
540
-
541
- AI Scan Summary:
542
- Files scanned: 8
543
- AI findings: 12
544
- AI calls made: 18
545
- Cost: 48ยข
546
- Critical: 2
547
- High: 5
310
+ vlayer ai-scan ./src --budget 100
548
311
  ```
549
312
 
550
- ---
551
-
552
- ## Report Examples
313
+ **AI Features:**
314
+ - 6 specialized LLM rules for complex HIPAA violations
315
+ - Automatic triage to reduce false positives by 50%+
316
+ - PHI scrubbing (HIPAA-safe, no PHI sent to API)
317
+ - Cost control with budget limits and caching
553
318
 
554
- ### HTML Report
555
-
556
- The HTML report includes:
557
- - Summary cards with severity counts
558
- - Stack detection section with tailored recommendations
559
- - Each finding with code context and line highlighting
560
- - Expandable remediation guides with code examples
561
- - Auto-fixable badge on issues that can be fixed automatically
562
-
563
- ### JSON Report
564
-
565
- Machine-readable format for CI/CD integration:
566
-
567
- ```json
568
- {
569
- "summary": {
570
- "total": 29,
571
- "critical": 8,
572
- "high": 12,
573
- "medium": 6,
574
- "low": 3
575
- },
576
- "stack": {
577
- "framework": "nextjs",
578
- "database": "supabase",
579
- "auth": "supabase-auth"
580
- },
581
- "findings": [...]
582
- }
583
- ```
319
+ **Typical cost:** $0.10-$0.50 per scan
584
320
 
585
321
  ---
586
322
 
587
- ## Configuration
323
+ ## ๐Ÿ“ Configuration
588
324
 
589
325
  Create `.vlayerrc.json` in your project root:
590
326
 
@@ -594,68 +330,38 @@ Create `.vlayerrc.json` in your project root:
594
330
  "ignorePaths": ["sample-data", "fixtures"],
595
331
  "safeHttpDomains": ["my-internal-cdn.com"],
596
332
  "contextLines": 3,
597
- "categories": ["phi-exposure", "encryption", "access-control"]
333
+ "categories": ["phi-exposure", "encryption", "access-control"],
334
+ "minConfidence": "medium",
335
+ "ai": {
336
+ "enabled": true,
337
+ "enableTriage": true,
338
+ "budgetCents": 50
339
+ }
598
340
  }
599
341
  ```
600
342
 
601
- | Option | Description | Default |
602
- |--------|-------------|---------|
603
- | `exclude` | Glob patterns to skip | `[]` |
604
- | `ignorePaths` | Path substrings to ignore | `[]` |
605
- | `safeHttpDomains` | HTTP domains to allow (CDNs) | Built-in list |
606
- | `contextLines` | Lines of context in reports | `2` |
607
- | `categories` | Categories to scan | All |
608
-
609
343
  ---
610
344
 
611
- ## CLI Reference
345
+ ## ๐Ÿ—๏ธ Auto-Fix
612
346
 
613
- ```bash
614
- # Basic scan
615
- vlayer scan <path>
347
+ Automatically remediate common vulnerabilities:
616
348
 
617
- # Scan options
618
- vlayer scan <path> -f html -o report.html # HTML report
619
- vlayer scan <path> -f markdown -o report.md # Markdown report
620
- vlayer scan <path> -c phi-exposure encryption # Specific categories
621
- vlayer scan <path> --fix # Auto-fix issues
622
-
623
- # Watch mode
624
- vlayer watch <path> # Watch for changes
625
- vlayer watch <path> -c phi-exposure # Watch specific categories
626
- vlayer watch <path> --config .vlayerrc.json # Watch with custom config
627
- vlayer watch <path> --min-confidence high # Watch with confidence filter
628
-
629
- # Audit commands
630
- vlayer audit <path> --summary # View audit summary
631
- vlayer audit <path> --generate-report # Generate PDF
632
- vlayer audit <path> --generate-report --text # Generate text instead
633
- vlayer audit <path> --generate-report --org "Company" --auditor "Name"
634
-
635
- # Baseline commands
636
- vlayer baseline <path> # Generate baseline
637
- vlayer baseline <path> -o custom.json # Custom output path
638
- vlayer scan <path> --baseline .vlayer-baseline.json # Scan with baseline
639
-
640
- # Compliance score
641
- vlayer score <path> # Calculate compliance score
642
- vlayer score <path> -f json # JSON output
643
- vlayer score <path> --baseline baseline.json # Score with baseline
644
-
645
- # Auditor reports
646
- vlayer report <path> # Generate auditor report
647
- vlayer report <path> -o report.html # Custom output path
648
- vlayer report <path> --org "Company Name" # Set organization
649
- vlayer report <path> --include-baseline # Include baseline comparison
349
+ ```bash
350
+ vlayer scan ./my-app --fix
650
351
  ```
651
352
 
652
- **Exit codes:**
653
- - `0` - No critical issues
654
- - `1` - Critical issues found (useful for CI/CD)
353
+ | Issue | Auto-Fix Applied |
354
+ |-------|------------------|
355
+ | SQL injection | Convert to parameterized query |
356
+ | Hardcoded password | Replace with `process.env.PASSWORD` |
357
+ | Hardcoded API key | Replace with `process.env.API_KEY` |
358
+ | HTTP URL | Upgrade to HTTPS |
359
+ | innerHTML | Replace with `textContent` |
360
+ | PHI in console.log | Comment out with review marker |
655
361
 
656
362
  ---
657
363
 
658
- ## HIPAA References
364
+ ## ๐Ÿ“š HIPAA References
659
365
 
660
366
  Each finding maps to specific HIPAA regulations:
661
367
 
@@ -671,89 +377,7 @@ Each finding maps to specific HIPAA regulations:
671
377
 
672
378
  ---
673
379
 
674
- ## Roadmap
675
-
676
- ### Recently Completed โœ…
677
- - [x] **Phase 4E: Authentication & User Management**
678
- - [x] Supabase Auth integration
679
- - [x] Email/password authentication flow
680
- - [x] Login and signup pages with dark theme
681
- - [x] Protected routes via Next.js middleware
682
- - [x] User session management
683
- - [x] User profile display in sidebar
684
- - [x] Logout functionality
685
- - [x] Environment variables configured in Vercel
686
- - [x] **Phase 4D: Custom Domain Configuration**
687
- - [x] Configured custom domains on vlayer.app
688
- - [x] Dashboard: app.vlayer.app
689
- - [x] Playground: play.vlayer.app
690
- - [x] Documentation: docs.vlayer.app
691
- - [x] Landing page: vlayer.app
692
- - [x] Automatic DNS configuration via Vercel
693
- - [x] SSL/TLS certificates provisioned for all domains
694
- - [x] Updated all cross-project links
695
- - [x] **Phase 4C: Dashboard Consolidation**
696
- - [x] Moved landing page to separate repo ([vlayer-website](https://github.com/Francosimon53/vlayer-website))
697
- - [x] Dashboard now at root route (/) instead of /dashboard
698
- - [x] Simplified route structure (/, /projects, /projects/[id])
699
- - [x] Removed route groups for cleaner app organization
700
- - [x] Dashboard-focused application architecture
701
- - [x] **Phase 4A: Web Dashboard (Enterprise Redesign)**
702
- - [x] Next.js dashboard deployed to Vercel
703
- - [x] Enterprise-grade dark navy theme with emerald accents
704
- - [x] Fixed sidebar navigation with VLayer branding
705
- - [x] Circular progress gauges with animations
706
- - [x] Multi-project management with REST API
707
- - [x] Status badges (Compliant/At Risk/Critical)
708
- - [x] Historical score tracking with visual charts
709
- - [x] Demo data with 4 realistic projects
710
- - [x] Glassmorphism effects and professional shadows
711
- - [x] Responsive design optimized for all devices
712
- - [x] **Phase 3B: Dashboard & Compliance Score**
713
- - [x] HIPAA Compliance Score (0-100) with severity weighting
714
- - [x] Enhanced HTML reports with visual gauge
715
- - [x] Auditor-ready reports with SHA256 hash
716
- - [x] Executive summary and filterable findings table
717
- - [x] Print-friendly CSS for PDF export
718
- - [x] **Phase 3A: IDE & Developer Experience**
719
- - [x] VS Code Extension v2.0 with real-time scanning
720
- - [x] Watch mode for continuous monitoring
721
- - [x] Inline diagnostics with hover tooltips
722
- - [x] Quick-fix actions and status bar integration
723
- - [x] **Phase 2B: Enhanced Custom Rules**
724
- - [x] Semantic awareness for custom rules
725
- - [x] Pattern-aware context detection
726
- - [x] Confidence level controls
727
- - [x] **Phase 2A: Semantic Context Analysis**
728
- - [x] AST-based semantic analysis
729
- - [x] Context-aware confidence levels
730
- - [x] Test file detection
731
- - [x] **Phase 1B: Reusable GitHub Action**
732
- - [x] GitHub Action for CI/CD integration
733
- - [x] Enhanced npm package
734
- - [x] Baseline and suppression systems
735
-
736
- ### Coming Soon
737
- - [ ] Slack/Teams notifications for new findings
738
- - [ ] CLI integration with dashboard auto-upload
739
- - [ ] Database backend for dashboard (currently file-based)
740
-
741
- ### Planned
742
- - [ ] HITRUST CSF mapping
743
- - [ ] SOC 2 compliance checks
744
- - [ ] AWS/GCP/Azure infrastructure scanning
745
- - [ ] Team dashboard with trend tracking
746
- - [ ] Jira/Linear integration for issue tracking
747
-
748
- ### Future
749
- - [ ] AI-powered fix suggestions
750
- - [ ] Dependency vulnerability scanning
751
- - [ ] Runtime PHI detection agent
752
- - [ ] Compliance certification workflows
753
-
754
- ---
755
-
756
- ## Contributing
380
+ ## ๐Ÿค Contributing
757
381
 
758
382
  Contributions are welcome! Please read our contributing guidelines before submitting PRs.
759
383
 
@@ -763,20 +387,32 @@ npm install
763
387
  npm run dev # Watch mode
764
388
  npm run test # Run tests
765
389
  npm run lint # Lint code
390
+ npm run typecheck # Type check
766
391
  ```
767
392
 
768
393
  ---
769
394
 
770
- ## License
395
+ ## ๐Ÿ“„ License
771
396
 
772
397
  MIT License - see [LICENSE](LICENSE) for details.
773
398
 
774
399
  ---
775
400
 
401
+ ## ๐Ÿ“ง Contact
402
+
403
+ - **General inquiries**: [hello@vlayer.app](mailto:hello@vlayer.app)
404
+ - **Sales & Enterprise**: [sales@vlayer.app](mailto:sales@vlayer.app)
405
+ - **Enterprise solutions**: [enterprise@vlayer.app](mailto:enterprise@vlayer.app)
406
+ - **Support**: [GitHub Issues](https://github.com/Francosimon53/verification-layer/issues)
407
+
408
+ ---
409
+
776
410
  <p align="center">
777
- Built for healthcare developers who take compliance seriously.
778
- <br>
779
- <a href="https://github.com/Francosimon53/verification-layer/issues">Report Bug</a>
780
- ยท
411
+ <strong>Built for healthcare developers who take compliance seriously.</strong>
412
+ <br><br>
413
+ <a href="https://vlayer.app">Website</a> โ€ข
414
+ <a href="https://docs.vlayer.app">Documentation</a> โ€ข
415
+ <a href="https://app.vlayer.app">Dashboard</a> โ€ข
416
+ <a href="https://github.com/Francosimon53/verification-layer/issues">Report Bug</a> โ€ข
781
417
  <a href="https://github.com/Francosimon53/verification-layer/issues">Request Feature</a>
782
418
  </p>