Skip to the content.

🏠 Gofer Engine

Introducing Gofer Engine

An HL7 interface engine built for simplicity and speed, strongly typed, and ready to containerize.

import gofer from '@gofer-engine/engine'

gofer
  .listen('tcp', 'localhost', 5500)
  .ack()
  .store({ file: {} })
  .route(route =>
    route.send('tcp', 'hl7.emr.example.com', 5500)
  )
  .run()

This is just a minimal example to set up a pass-through interface engine logging messages to files. Gofer Engine is much more capable than just a simple pass-through engine. It also supports filtering, transforming, queuing, events, routing, and much more. See More OOP Interface Channel Development

Reinventing healthcare interoperability tooling!

Are you building a Node.JS such as a Next.JS application or GraphQL.js API and needing to integrate directly with HL7 interfaces? We have included messengers to make creating and sending HL7 simple once and for all.

Here is a very simplified example of using Gofer Engine to create a messenger function.

import gofer from `@gofer-engine/engine`;

const [messenger, _id] = gofer.messenger((route) => {
  return route
    .store({
      postgres: { 
        host: '127.0.0.1',
        password: 'password',
        table: 'example'
      }
    })
    .send('tcp', '192.168.1.200', 5600);
})

// use somewhere in script to send message such as
const main = async () => {
  messenger(`MSH|^~\\&|||||199912271408||ADT^A04|123|D|2.5\rEVN|A04|199912271408|||\rPID|1||1234||DOE^JOHN|||M`)
}

main();

For another example of how to generate the HL7 message using OOP style, see Creating an HL7 Messenger

Gofer Engine is built around the modern Node.JS stack and does not require any licensed software to run in development or production. Gofer Engine is open source for transparency and continued community development under the ISC license.

Documentation