Last modified on 12 March 2014, at 19:44

GNU Health/Introduction

About this BookEdit

This book provides an introduction to GNU Health, The Free Health and Hospital Information System. Unlike traditional books, this Wikibook will be updated with the latest stable GNU Health version. Health is dynamic by nature, so is GNU Health.

Versioning : The book will include functionality from the upcoming version, several weeks before the stable release. This means that some texts and pictures in the book belong to the new version.


The book is organized in the following sections:

  • Introduction to GNU Health
  • Functional guide : Philosophy behind the project and the core functionality. Provides the information on how to approach a GNU Health implementation.
  • Modules in Detail : Information and instructions for specific modules. Each modules encompasses functionality for a speciality (pediatrics, surgery, gynecology, socioeconomics ... )
  • Technical : Installation manual, administrator's Guide


If you are starting with GNU Health, you should read the book in a linear, sequential fashion. It's the best way to understand the software, the project and how to implement it.

Preface · First Steps

GNU Health FunctionalityEdit

The main areas of GNU Health are :

  • Individual and community management : demographics, domiciliary units, families, operational areas and sectors, ...
  • Patient management : Socioeconomics, lifestyle, encounters / evaluations, hospitalizations, lab reports, clinical history, ...
  • Health center management : Finances, stock, pharmacy , laboratory, beds, operating rooms, appointments, supply chain management, human resources, ...
  • Information management : Reporting, Demographics and Epidemiology


These areas involve a multi-disciplinary teams, with different responsibilities. For example, the individual demographics and status of the domiciliary units (DU) can be collected by social workers; the patient management by health professionals ; the health center management by administrative personnel and accountants ; and the Information produced by the health center can be processed and managed by the Ministry of Health authorities.

This is just an example to show the importance of team work in GNU Health to get be best results in your community.

Deploying GNU Health: Centralized vs Distributed InstallationsEdit

GNU Health is scalable in functionality, database size and transactional volume. For instance, you can install GNU Health in a single doctor office, or in country public hospitals network. Depending the type of deployment, you will think about a centralized (single instance) vs a distributed installation.

  • Single GNU Health Instance : All the information resides in a single database, and it will be accessed via network from different workstations from the same health center (local area network) or from different health centers.
  • Distributed GNU Health instances : Under this scenario, each health center has its own database instance, and information can be synchronized among health centers. This would be the case when you want to deploy GNU Health in a network of hospitals, where the communication infrastructure is suboptimal.

Needless to say, choosing the deployment method requires careful study of resources (hardware, network, human resources, security and access control, backup and disaster recovery policies, ... ) that goes beyond the scope of this book. The two types of installations have pros and cons.

Sample Patient ID card generated by GNU Health

Unique Patient ID : In hand-written histories and in some electronic medical records, is not uncommon to find duplicate patients or duplicate medical records. This scenario is not only costly, but it may represent a risk to the patient.

The other problem people face in many countries is data isolation. That is, health centers don't communicate to each other, resulting in a different medical history on each center. In other words, in many health care systems today, you are a different person and patient on each health center you visit.

GNU Health uses a unique person and patient identifier, that does not allow the duplication of either individuals or patient medical history at the health center. It allows to export the information to the patient card, and it provides the framework to synchronize data between health centers. For quick patient identification in different health care network, the patient ID can be read, for example, with a QR reader, speeding up the registration process and avoiding common human errors.


GNU Health ResourcesEdit

On August 26th, 2011, the Free Software Foundation GNU project adopted GNU Health and made it an official. Since then, the development environment is hosted at GNU.

Other GNU Health community resources :

  1. Homepage : http://health.gnu.org
  2. Mailing lists : https://savannah.gnu.org/mail/?group=health
  3. Twitter : https://twitter.com/gnuhealth
  4. IRC Channels : You can find live help at IRC in the channels #gnu-health for English and #gnu-health-es for Spanish. You can use any IRC client or Free node web interface
  5. Development environment : At GNU Savannah . Besides the mailing lists, here you can post bugs, tasks and check out the latest development version. http://savannah.gnu.org/projects/health
  6. GNU Health community at Google Plus : http://gplus.to/GnuHealth
  7. Community demo server : This server is in Europe and serves as a demo server to practice and see a running system. You can find more information at the The GNU Health Community Server section of this book.

Preface · First Steps