Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add more documentation #50

Merged
merged 9 commits into from
Dec 24, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 1 addition & 3 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -1,3 +1 @@
jest.config.ts
release.config.js
/__tests__/**/*
/bin/**/*
58 changes: 56 additions & 2 deletions .github/release-drafter.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,58 @@
# Configuration for Release Drafter: https://github.com/toolmantim/release-drafter
name-template: $NEXT_PATCH_VERSION
tag-template: $NEXT_PATCH_VERSION

# Emoji reference: https://gitmoji.carloscuesta.me/
categories:
- title: 💥 Breaking changes
labels:
- breaking
- title: 🚀 New features and improvements
labels:
- enhancement
- title: 🐛 Bug fixes
labels:
- bug
- title: 📦 Dependency updates
labels:
- dependencies
collapse-after: 15
- title: 📝 Documentation updates
labels:
- documentation
- title: 🌐 Localization and translation
labels:
- localization
- title: 🌐 Community-related changes
labels:
- community
- title: 👻 Maintenance
labels:
- chore
- maintenance
- title: 🚦 Tests
labels:
- test
- title: ✍ Other changes
exclude-labels:
- skip-changelog
- invalid
template: |
## What’s Changed
<!-- Optional: add a release summary here -->
$CHANGES


$CHANGES
autolabeler:
- label: 'documentation'
files:
- '*.md'
branch:
- '/docs{0,1}\/.+/'
- label: 'bug'
branch:
- '/fix\/.+/'
title:
- '/fix/i'
- label: 'enhancement'
branch:
- '/feature\/.+/'
33 changes: 28 additions & 5 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
@@ -1,13 +1,18 @@
name: GitHub CI
on:
push:
branches: [ main, 'develop' ]
branches: [ 'main', 'develop' ]
pull_request:
branches: [ 'develop' ]
branches: [ 'main', 'develop' ]

jobs:
Test:
runs-on: ubuntu-latest
permissions:
contents: write
issues: write
pull-requests: write
id-token: write
strategy:
matrix:
node-version: [ 18.x, 20.x, 'lts/*' ]
Expand All @@ -23,14 +28,27 @@ jobs:
run: npm install --ignore-scripts
- name: Run Unit Tests
run: npm run test:ci
Release-Drafter:
runs-on: ubuntu-latest
permissions:
contents: write
issues: write
pull-requests: write
id-token: write
steps:
- name: Release Drafter
uses: release-drafter/release-drafter@v5.9.0
uses: release-drafter/release-drafter@v5.25.0
env:
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}
continue-on-error: true
Release:
runs-on: ubuntu-latest
needs: [ test ]
needs: [ 'Test','Release-Drafter' ]
permissions:
contents: write
issues: write
pull-requests: write
id-token: write
steps:
- uses: actions/checkout@v3
with:
Expand All @@ -39,8 +57,13 @@ jobs:
uses: actions/setup-node@v3
with:
node-version: 'lts/*'
- name: Install Dependencies
- name: NPM Install
run: npm install --ignore-scripts
- name: Semantic Release (Dry Run)
run: npm run semantic-release:dry-run
env:
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Semantic Release
run: npm run semantic-release
env:
Expand Down
10 changes: 4 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -131,12 +131,10 @@ docs
.yarn/install-state.gz
.pnp.*

# NPM
lib
.npmrc
package-lock.json

# Webstorm
# Custom
.idea
.run
lib
temp
.npmrc
package-lock.json
19 changes: 0 additions & 19 deletions .npmignore

This file was deleted.

29 changes: 19 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
## Node HL7 Client
A pure Node.js HL7 Client

> A pure Node.js HL7 Client
that allows for communication to a HL7 Broker/Server that can send properly formatted HL7 messages with ease.
Separately it can also parse and extract out any segment within an HL7 message.
Messages could come as one after the other (MSH), as a Batch (BHS), or in a batch file (FHS).
Expand All @@ -11,18 +12,22 @@ Included in this package:

Benefits:

- No external dependencies, making this ultra-fast.
- Automatically re-connect or retry sending
- Written in typescript and published with heavily commented type definitions
- Peer `node-hl7-server' npm package that in conjunction with this one could create a powerful HL7 system.
- Works in Windows or Linux-based systems
- With typed settings of key segments of the HL7 message (MSH, BHS, and FHS) it ensures that you are building your message in compliance with the HL7 standards defined at [https://www.hl7.org](https://www.hl7.org/implement/standards/index.cfm?ref=nav)
- :fast_forward: No external dependencies, making this ultra-fast.
- :electric_plug: Automatically re-connect or retry sending
- :memo: Written in typescript and published with heavily commented type definitions
- :bust_in_silhouette: Peer `node-hl7-server' npm package that in conjunction with this one could create a powerful HL7 system.
- :computer: Works in Windows or Linux-based systems
- :guide_dog: With typed settings of key segments, of the HL7 message (MSH, BHS, and FHS) it ensures that you are building your message in compliance with the HL7 standards defined at [https://www.hl7.org](https://www.hl7.org/implement/standards/index.cfm?ref=nav)

If you are using this NPM package, please consider give it a :star: star.
This will increase its visibility and solicit more contribution from the outside.

## Table of Contents

1. [Keyword Definitions](#Keyword-Definitions)
2. [Acknowledgements](#acknowledgements)
3. [License](#license)
2. [Documentation](#documentation)
3. [Acknowledgements](#acknowledgements)
4. [License](#license)

## Keyword Definitions

Expand All @@ -37,9 +42,13 @@ They might be sans uppercase throughout the documentation, but they would have t
* **MUST** - This word, or the terms "**REQUIRED**" or "**SHALL**", mean that the definition is an absolute requirement of the specification.
* **MUST NOT** - This phrase, or the phrase "**SHALL NOT**", mean that the definition is an absolute prohibition of the specification.
* **SHOULD** - This word, or the adjective "**RECOMMENDED**", mean that there may exist valid reasons in particular circumstances to ignore a particular item, but the full implications must be understood and carefully weighed before choosing a different course.
* **SHOULD NOT** - This phrase, or the phrase "**NOT RECOMMENDED**", mean that there may exist valid reasons in particular circumstances when the particular behavior is acceptable or even useful. The full implications should be understood and the case carefully weighed before implementing any behavior described with this label.
* **SHOULD NOT** - This phrase, or the phrase "**NOT RECOMMENDED**", mean that there may exist valid reasons in particular circumstances when the particular behavior is acceptable or even useful. The full implications should be understood, and the case carefully weighed before implementing any behavior described with this label.
* **MAY** - This word, or the adjective "**OPTIONAL**", mean that an item is truly optional. Any implementation which does not include a particular option MUST be prepared to interoperate with another implementation which does include the option, though perhaps with reduced functionality. In the same vein, an implementation which does include a particular option MUST be prepared to interoperate with another implementation, which does not include the option (except, of course, for the feature the option provides.)

## Documentation

It's way too extensive to include on this README alone. Please [read this](pages/index.md) to gain more information.

## Acknowledgements

- [node-rabbitmq-client](https://github.com/cody-greene/node-rabbitmq-client): Code Design/Auto Re-Connect/Resend, Inspiration
Expand Down
Loading
Loading