fhir-web icon indicating copy to clipboard operation
fhir-web copied to clipboard

A web based interface for administering FHIR based digital health solutions

fhir-web

codecov

fhir-web is the default frontend for the HAPI FHIR Server, as well as a configuration dashboard for the FHIR-based version of OpenSRP mobile application. It provides access to healthcare data, configuration options, and other functionality provided by OpenSRP.

Table of Contents


  • fhir-web
    • Table of Contents
    • What is the FHIR Standard
    • What is OpenSRP
    • Project Architecture
    • Repository Setup
      • Bootstrapping
      • Current Build Tools
      • Deprecated Build Tools
    • Getting Started
    • Contributing
    • Deployments
      • Prerequisites
      • 1. Docker
      • 2. Kubernetes
      • 3. Ansible
    • Configuration
      • Environment Variables
      • Multi-language Support (MLS)
    • Publishing
    • Deprecation Notice

What is the FHIR Standard

HL7 Fast Healthcare Interoperability Resources (FHIR), is a standard to enable quick and efficient representation and exchange of health care data, including clinical and administrative data, by digital health systems.

What is OpenSRP

OpenSRP is a Kotlin application for delivering offline-capable, mobile-first healthcare project implementations from local community to national and international scale using FHIR and the WHO Smart Guidelines on Android.

Project Architecture

fhir-web consumes FHIR resources from the OpenSRP HAPI FHIR server. Both fhir-web and the HAPI FHIR server use a Keycloak Server for authentication (Oauth 2.0). On top of the React JS web application, there is a tiny Express JS Server that is bundled together with fhir-web that handles both authentication and serving the compiled fhir-web files. For All Intents and Purposes, both the Express and the React JS apps are bundled together and collectively referred to as the fhir-web.

Repository Setup

Bootstrapping

This repository is a monorepo bootstrapped with Lerna and Yarn Workspaces. It is divided into two workTrees, the first, /app, containing the actual React application, and the second, /packages containing the different packages that /app consume.

Current Build Tools

Deprecated Build Tools

Getting Started

  • Getting Started Documentation.

Contributing

  • Contributing Documentation.

Deployments

We use different technologies to deploy fhir-web.

Prerequisites

1. Docker

  • fhir-web Docker Deployment Documentation.

2. Kubernetes

3. Ansible

  • fhir-web Ansible Playbook
    • Run an fhir-web deployment with certbot, react, express, and nginx.
    • You'll need accompanying ansible inventories

Configuration

Environment Variables

  • List Of Configurable Environment Variables.

Multi-language Support (MLS)

  • Internalization and Multi Language Support Documentation.

Publishing

  • Publishing Documentation.

Deprecation Notice

Important: We are deprecating packages used for administration of both opensrp web server and mobile clients that do not use fhir. These packages will no longer be actively maintained or receive updates.

The code can be found in this branch. Any future releases and development should be done from this branch.

For any questions or assistance regarding issues in the affected modules, please feel free to create an issue