Skip to main content

Welcome to OmniEHR Documentation

Build FHIR-compliant healthcare applications with enterprise-grade security. Complete EHR solution with patient management, clinical workflows, and comprehensive audit controls.

FHIR R4 Compliant
HIPAA-Aligned Controls
AES-256-GCM Encryption
Role-Based Access Control

Quick Start

Get OmniEHR running locally in minutes

1

Clone and install dependencies

Clone the repository and install all dependencies using npm workspaces.
git clone https://github.com/amankiit/OmniEHR.git
cd OmniEHR
npm install
2

Start MongoDB

Launch MongoDB using Docker Compose or point to your existing instance.
docker compose up -d
By default, MongoDB will be available at mongodb://localhost:27017/ehr
3

Configure environment variables

Copy the example environment files and generate your encryption key.
cp server/.env.example server/.env
cp client/.env.example client/.env
openssl rand -hex 32
Set the PHI_ENCRYPTION_KEY in server/.env with the generated 64-character hex string.
4

Start the application

Run both the API server and frontend client in development mode.
npm run dev
  • API server: http://localhost:4000
  • Frontend client: http://localhost:5173

Core Features

Everything you need to build a compliant healthcare application

Patient Management

Comprehensive patient registry with encrypted demographics and automatic PID assignment

FHIR Resources

Full support for FHIR R4 resources including Patient, Observation, Condition, and more

Scheduling System

Advanced appointment scheduling with conflict detection and practitioner availability

Clinical Workflows

Care-team task management and clinical command center for risk stratification

Security & Compliance

HIPAA-aligned controls with AES-256-GCM encryption and comprehensive audit logging

Role-Based Access

Multi-role access control for admins, practitioners, and auditors

API Reference

Explore the complete FHIR R4 API

Patient

Create, read, and update patient records

Observation

Clinical observations and vital signs

Condition

Problem list and diagnoses

AllergyIntolerance

Patient allergy records

MedicationRequest

Medication orders and prescriptions

Encounter

Clinical encounters and visits

Appointment

Schedule and manage appointments

Task

Care-team task management

Authentication

JWT-based authentication

Ready to get started?

Follow our quickstart guide to set up OmniEHR locally and start building your healthcare application.

View Quickstart Guide

Build docs developers (and LLMs) love