Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Health Cloud Intient

An end-to-end Salesforce Health Cloud solution for patient onboarding, clinical document processing, and care team collaboration — built on Apex, LWC, Flow, and OmniStudio, with OCR and FHIR interoperability.


Overview

Health Cloud Intient digitizes the patient intake and care-management lifecycle on Salesforce Health Cloud. It replaces manual paperwork and disconnected systems with a guided onboarding wizard, automated clinical document extraction (OCR), real-time interoperability with external EHR systems via FHIR, and a unified dashboard for care teams to track patients through their care journey.

The project demonstrates a full-stack Salesforce implementation: custom data model, metadata-driven UI, declarative automation, OmniStudio guided flows, external system integration, and role-based security — all deployable to a scratch org in minutes.

Architecture

Health Cloud Intient Architecture

The system is organized into five layers:

  • Presentation — Lightning Web Components deliver the onboarding wizard, document upload, care dashboard, patient timeline, and metadata-driven forms.
  • Automation — Flow and OmniStudio (OmniScript + DataRaptor) drive guided data capture and lifecycle transitions declaratively.
  • Business Logic — Apex services handle orchestration, OCR requests, FHIR integration, and care management queries.
  • Data — Custom objects and Custom Metadata Types model patients, encounters, documents, and care teams.
  • External Systems — Named Credentials connect securely to AWS Textract (OCR) and external clinical systems (SMART on FHIR).

Features

🧾 Patient Onboarding

  • 4-step guided onboarding wizard (patientOnboarding LWC) backed by an OmniScript for structured, guided data capture
  • Dynamic, metadata-driven form fields via FormField__mdt — add or change form fields without touching code
  • Automated lifecycle tracking via record-triggered Flow

📄 Clinical Document Processing

  • Drag-and-drop document upload with real-time OCR status polling
  • Text extraction powered by AWS Textract, called via a SigV4-authenticated Named Credential
  • Extracted data linked directly to patient and encounter records

🩺 Care Management

  • Central dashboard for care teams to view patients, tasks, and encounters at a glance
  • Full patient timeline showing historical encounters
  • Care team assignment and role tracking via CareTeamMember__c

🔗 Interoperability

  • SMART on FHIR OAuth2 integration with external clinical/EHR systems
  • Configurable integration settings via IntegrationConfig__mdt — no hardcoded endpoints

🔐 Security

  • Three purpose-built permission sets — Admin, CareManager, and PatientPortal — enforcing least-privilege access

Tech Stack

Layer Technology
UI Lightning Web Components (LWC)
Automation Flow, OmniStudio (OmniScript, DataRaptor)
Server-side logic Apex
Data model Custom Objects, Custom Metadata Types
Integrations AWS Textract (OCR), FHIR / SMART on FHIR (EHR)
Auth Named Credentials (SigV4, OAuth2)
Project tooling Salesforce CLI (sf), SFDX project format

Project Structure

HealthCloud-Intient/
├── config/
│   └── project-scratch-def.json        # Scratch org definition (Health Cloud enabled)
├── force-app/main/default/
│   ├── classes/                        # Apex services + test classes
│   │   ├── PatientService.cls
│   │   ├── AWSTextractService.cls
│   │   ├── ClinicalSystemIntegration.cls
│   │   ├── MetadataFormService.cls
│   │   ├── PatientOnboardingController.cls
│   │   └── CareManagementController.cls
│   ├── lwc/                            # Lightning Web Components
│   │   ├── patientOnboarding/
│   │   ├── careManagementDashboard/
│   │   ├── clinicalDocumentUpload/
│   │   ├── patientTimeline/
│   │   ├── metadataDrivenForm/
│   │   └── patientSearch/
│   ├── flows/                          # PatientOnboardingFlow, PatientLifecycleTracking
│   ├── objects/                        # Patient__c, ClinicalDocument__c, PatientEncounter__c, CareTeamMember__c
│   ├── permissionsets/                 # Admin, CareManager, PatientPortal
│   └── namedCredentials/               # AWSTextract, ClinicalSystem_FHIR
├── .forceignore
└── sfdx-project.json

Getting Started

Prerequisites

Setup

# 1. Clone the repo
git clone https://github.com/SRIVATSAV009/HealthCloud-Intient.git
cd HealthCloud-Intient

# 2. Authorize your Dev Hub (one-time)
sf org login web --set-default-dev-hub --alias devhub

# 3. Create a scratch org
sf org create scratch --definition-file config/project-scratch-def.json --alias healthcloud-scratch --set-default

# 4. Deploy the source
sf project deploy start

# 5. Assign permission sets
sf org assign permset --name Admin
sf org assign permset --name CareManager

# 6. Open the org
sf org open

Running Tests

sf apex run test --code-coverage --result-format human

Named Credentials Setup

Before OCR and FHIR features will work, configure the following Named Credentials in your target org with real endpoint/auth details:

Named Credential Purpose Auth
AWSTextract Document OCR text extraction AWS SigV4
ClinicalSystem_FHIR External EHR interoperability SMART on FHIR OAuth2

Roadmap

  • Add Experience Cloud portal for patient self-service intake
  • Expand FHIR integration to bidirectional sync
  • Add Einstein-powered risk scoring to the care dashboard

License

This project is available under the MIT License — see LICENSE for details.

Author

Sai Srivatsav D GitHub

About

End-to-end Salesforce Health Cloud solution for patient onboarding, clinical document OCR, care management, and FHIR interoperability — built with Apex, LWC, Flow & OmniStudio.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages