FHIR Academy Capstone Project Intelligent Healthcare Data Interoperability Platform Using SMART on FHIR, Medplum, .NET and AWS
Go to file
2026-08-26 13:23:45 +00:00
.Net Capstone PPT Update README.md 2026-08-21 14:58:23 +05:30
.Net Capstone Project Error fix 2026-08-26 13:23:45 +00:00
README.md Update README.md 2026-08-21 08:41:05 +00:00

Intelligent Healthcare Data Interoperability Platform

A cloud-native healthcare interoperability solution built using .NET 8, React, SMART on FHIR, Medplum, PostgreSQL, and AWS.


Table of Contents

  1. Introduction
  2. Project Overview
  3. Business Use Case
  4. System Architecture
  5. Technology Stack
  6. Features
  7. Supported Resources
  8. Authentication Flow
  9. Validation Framework
  10. Synchronization Engine
  11. AWS Infrastructure
  12. Folder Structure
  13. Installation
  14. Configuration
  15. Running the Application
  16. API Documentation
  17. Security
  18. Monitoring and Logging
  19. Future Enhancements

Introduction

Healthcare data is often stored across multiple Electronic Health Record systems. This project enables retrieval, validation, normalization, synchronization, and storage of FHIR resources using standard healthcare interoperability protocols.

The platform is designed using modern cloud-native architectural principles to support scalable, secure, and maintainable healthcare integrations.


Project Overview

The application retrieves patient healthcare information from SMART on FHIR compliant EHR systems and synchronizes validated records into Medplum FHIR Server.

The platform supports:

  • SMART on FHIR Authorization
  • OAuth2 Authentication
  • Resource Validation
  • Data Normalization
  • Medplum Integration
  • AWS Deployment
  • Audit Logging
  • Resource Synchronization

Business Use Case

Healthcare organizations require:

  • Centralized patient records
  • Standardized healthcare data exchange
  • Secure patient data access
  • Interoperability between systems
  • Improved clinician workflows

This platform addresses each of these requirements.


High-Level Architecture

+------------------------------------------------+
|               EHR Systems                      |
|          Epic / Cerner / Sandbox               |
+----------------------+-------------------------+
                       |
                       |
               SMART on FHIR
                       |
                       |
                       V

+------------------------------------------------+
|              React TypeScript UI               |
+------------------------------------------------+
                       |
                       |
                       V

+------------------------------------------------+
|                .NET 8 API Layer                |
+------------------------------------------------+
             |          |           |
             |          |           |
             V          V           V

     Validation    Sync Engine   Audit Logs
       Service

             |
             |
             V

+------------------------------------------------+
|              Medplum FHIR Server               |
+------------------------------------------------+
                       |
                       |
                       V

+------------------------------------------------+
|                PostgreSQL DB                   |
+------------------------------------------------+

                       |
                       |
                       V

+------------------------------------------------+
|                   AWS Cloud                    |
+------------------------------------------------+

Technology Stack

Frontend

  • React
  • TypeScript
  • Vite
  • SMART Client JS

Backend

  • ASP.NET Core .NET 8
  • REST APIs
  • Dependency Injection
  • FluentValidation

Authentication

  • OAuth 2.0
  • OpenID Connect
  • SMART on FHIR

Healthcare Standards

  • FHIR R4
  • SMART on FHIR

FHIR Server

  • Medplum

Database

  • PostgreSQL

Cloud

  • AWS

Monitoring

  • CloudWatch
  • Application Logging

Features

SMART Launch

Launch directly inside EHR systems.

Authorization Code Flow

Secure OAuth authentication.

FHIR Resource Retrieval

Retrieve patient healthcare resources.

Resource Validation

Validate incoming resource data.

Resource Normalization

Automatically fix supported data issues.

Medplum Synchronization

Store resources in Medplum.

Audit Logging

Track all operations.

Cloud Deployment

Deploy using AWS infrastructure.


Supported FHIR Resources

  • Patient
  • Observation
  • Encounter
  • Condition
  • Procedure
  • MedicationRequest
  • AllergyIntolerance
  • Immunization
  • Practitioner
  • Organization
  • DiagnosticReport
  • CarePlan

SMART on FHIR Authorization Flow

User Launches Application
            |
            V

Smart Launch Context

            |
            V

Authorization Request

            |
            V

User Authentication

            |
            V

Authorization Code

            |
            V

Access Token

            |
            V

FHIR API Access

Validation Framework

The validation framework ensures resource quality before persistence.

Example Validations

Patient

  • Identifier Required
  • Name Required
  • Gender Validation
  • BirthDate Validation

Observation

  • Status Required
  • Code Required
  • Subject Required

Encounter

  • Status Required

Condition

  • ClinicalStatus Required

MedicationRequest

  • Intent Required
  • Status Required

AllergyIntolerance

  • ClinicalStatus Validation

Synchronization Workflow

Fetch Resource

     |
     V

Validate Resource

     |
     V

Normalize Resource

     |
     V

Transform Resource

     |
     V

Sync to Medplum

     |
     V

Persist Result

     |
     V

Generate Audit Log

Database Design

PostgreSQL

Main tables:

  • Users
  • AuditLogs
  • SyncHistory
  • ResourceMetadata

Medplum

Stores:

  • FHIR Resources
  • Resource History
  • Version Records

AWS Infrastructure

Frontend

  • Amazon S3
  • Amazon CloudFront

Backend

  • Amazon ECS
  • Docker Containers

Database

  • Amazon RDS PostgreSQL

Security

  • IAM
  • Secrets Manager

Monitoring

  • CloudWatch

Networking

  • Amazon VPC

Security Features

  • OAuth2 Authentication
  • SMART Authorization
  • JWT Validation
  • Secure HTTPS
  • Environment-Based Secrets
  • Role-Based Access Control
  • AWS IAM Security Policies

Project Structure

project-root/

frontend/
│
├── src/
├── pages/
├── components/
├── services/
├── hooks/
├── App.tsx
│
backend/
│
├── Controllers/
├── Services/
├── Validators/
├── Authentication/
├── Repositories/
├── Models/
├── Configurations/
├── Program.cs
│
deployment/
│
├── aws/
├── docker/
├── terraform/
│
documentation/
│
├── architecture
├── diagrams
├── api-docs
│
README.md

Prerequisites

  • .NET 8 SDK
  • Node.js 20+
  • PostgreSQL
  • Medplum Account
  • AWS Account

Installation

Clone Repository

git clone <repository-url>

Frontend

cd frontend
npm install
npm run dev

Backend

cd backend
dotnet restore
dotnet build
dotnet run

Environment Variables

SMART_CLIENT_ID=

SMART_REDIRECT_URI=

FHIR_BASE_URL=

MEDPLUM_BASE_URL=

MEDPLUM_CLIENT_ID=

MEDPLUM_CLIENT_SECRET=

POSTGRES_CONNECTION_STRING=

JWT_SECRET=

AWS_REGION=

AWS_ACCESS_KEY_ID=

AWS_SECRET_ACCESS_KEY=

Monitoring

The system includes:

  • API Logs
  • Validation Logs
  • Synchronization Logs
  • CloudWatch Metrics
  • Health Checks
  • Error Tracking

CI/CD Pipeline

GitHub Push
      |
      V

Build Application
      |
      V

Run Tests
      |
      V

Docker Build
      |
      V

Deploy to AWS

Future Enhancements

  • AI Clinical Recommendations
  • Real-Time CDS Hooks
  • FHIR Bulk Export
  • Event Streaming
  • Multi-Tenant Support
  • Healthcare Analytics Dashboard
  • AWS Bedrock Integration
  • Generative AI Assistant

Author

Himanshu Agrawal

Lead Engineer - I

CitiusTech

FHIR Academy Capstone Project


Acknowledgements

  • HL7 FHIR Community
  • SMART Health IT
  • Medplum
  • AWS
  • CitiusTech
  • FHIR Academy

License

This project is developed for educational, research, and healthcare interoperability demonstration purposes.