/openhospital

Open Hospital is a free and open source software for healthcare data management. This repository is used to build its portable releases.

Primary LanguageShellGNU General Public License v3.0GPL-3.0

Open Hospital

Open Hospital (OH) is an electronic health record (EHR) application. Open Hospital is currently provided as a desktop application written in Java and it's designed to work without an internet connection.

Open Hospital is composed by the following components, hosted in separated repositories:

  • OH Core, a library that contains the business logic and the data abstraction layer
  • OH GUI, which provides a graphical user interface (GUI) made with Java Swing
  • OH Doc, which contains the user and admin documentation in Asciidoc format
  • OH UI, a web user interface that consists of a React SPA (single page application) [WIP]
  • OH API, a web server that exposes REST APIs over the Core component, and it's used by the UI component [WIP].

This repository is used to assemble the portable (or all-in-one) packages of Open Hospital, which you can download here.

How to contribute

There are several ways in which you can contribute to Open Hospital:

NB: GitHub Issues are disabled on the repositories of individual components. They are enabled on this repository to collect bug reports from end users and issues about this repository only. Instead, Jira is used to collect issues and plan the development across all OH components.

Documentation

Read on about Open Hospital:

Community

You can reach out to the community of contributors by joining our Slack workspace or by subscribing to our mailing list.

How to create OH packages

👷 📦 To create the Open Hospital packages, make sure to have installed the following dependencies on a Linux machine: JDK 8+, Maven, asciidoctor-pdf, zip, GNU make.

Then follow these simple steps:

  1. Clone this repository:

    git clone https://github.com/informatici/openhospital
    
  2. Run the script that compiles the components of Open Hospital, and assembles the portable distributions:

    cd openhospital
    make
    

    You can also parallelize some make tasks by using the -j flag (e.g. make -j4) or use intermediate targets to build single parts of the distribution - use make help to see a list of available targets.