npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

node-hl7-client

v3.2.0

Published

A pure Node.js HL7 Client that allows for communication to a HL7 Broker/Server that can send properly formatted HL7 messages with ease.It can also parse and then you can extract message segments out.

Readme

Node HL7 Client

A pure TypeScript HL7 client for Node.js enabling seamless communication with HL7 servers.

node-hl7-client is a lightweight, dependency-free library built for high-performance communication with HL7 brokers/servers. It supports sending properly formatted HL7 messages, handling responses, and working with both single and batched HL7 message formats (MSH, BHS, and FHS).

✨ Features

  • Zero External Dependencies – Ultra-fast performance with no bloat.
  • 🔁 Auto Reconnect & Retry – Automatically handles connection interruptions.
  • 🧠 TypeScript + Typed Definitions – Fully typed for modern development environments.
  • 🤝 Companion Package Available – Use alongside node-hl7-server for a complete HL7 solution.
  • 💻 Cross-Platform Support – Works on Windows, macOS, and Linux.
  • 🧭 Standards-Based – Typed builders ensure MSH, BHS, and FHS segments follow HL7.org specifications.

📦 Install

npm install node-hl7-client

📚 What's Included?

  • HL7 Client – Connects to a remote HL7 server, sends messages, and processes responses.
  • HL7 Parser – Parses raw HL7 message strings into accessible segments.
  • HL7 Builder – Builds valid HL7 messages, batches, or complete HL7 batch files.

🧾 Table of Contents

  1. Keyword Definitions
  2. Documentation
  3. Acknowledgements
  4. License

Keyword Definitions

This NPM package is designed to support medical applications with potential impact on patient care and diagnoses. This documentation, along with its peer package node-hl7-server, uses the following standardized definitions for clarity and interoperability:

Keywords such as "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" are used consistently throughout the documentation. These terms retain their meaning even when not capitalized.

  • MUST – This word, or the terms "REQUIRED" or "SHALL", indicates an absolute requirement of the specification.
  • MUST NOT – This phrase, or the phrase "SHALL NOT", indicates an absolute prohibition of the specification.
  • SHOULD – This word, or the adjective "RECOMMENDED", means that there may be valid reasons in particular circumstances to ignore a particular item, but the full implications must be understood and carefully weighed before doing so.
  • SHOULD NOT – This phrase, or the phrase "NOT RECOMMENDED", means that there may be valid reasons in particular circumstances when the behavior is acceptable or even useful. The full implications should be understood and the case carefully weighed before implementation.
  • MAY – This word, or the adjective "OPTIONAL", means that the item is truly optional. Implementations that do not include a particular option MUST still interoperate with those that do, though possibly with reduced functionality. Likewise, implementations that include an option MUST interoperate with those that do not (except, of course, for the specific feature provided by the option).

📖 Documentation

Full API documentation, usage examples, and advanced configurations are available on the project site: 🔗 https://bugs5382.github.io/node-hl7-client/

🙏 Acknowledgements

📄 License

MIT © LICENSE