fhirformjs

NPM module to convert FHIR Questionnaire JSON to JSON Schema for form rendering.

https://github.com/dermatologist/fhirformjs

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.5%) to scientific vocabulary

Keywords

fhir fhir-client fhir-parser hacktoberfest npm-package questionnaire

Keywords from Contributors

interactive mesh interpretability profiles sequences generic projection standardization optim embedded
Last synced: 6 months ago · JSON representation ·

Repository

NPM module to convert FHIR Questionnaire JSON to JSON Schema for form rendering.

Basic Info
  • Host: GitHub
  • Owner: dermatologist
  • License: mit
  • Language: TypeScript
  • Default Branch: develop
  • Homepage: https://nuchange.ca
  • Size: 820 KB
Statistics
  • Stars: 20
  • Watchers: 3
  • Forks: 9
  • Open Issues: 0
  • Releases: 7
Topics
fhir fhir-client fhir-parser hacktoberfest npm-package questionnaire
Created over 7 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Contributing License Citation

README.md

fhirformjs

npm version npm Build Known Vulnerabilities Documentation

About

Creating, maintaining and using forms for health data capture is vital, and FHIRForm is a framework for that. FHIRFormJS is one of its components (an npm module) that helps create input forms corresponding to a FHIR questionnaire. FHIRFormJS does not render forms but converts FHIR questionnaire into a schema and lets other libraries (such as react-jsonschema-form ) do the heavy lifting. An output mapper that maps the output from a react-jsonschema-form to a QuestionnaireResponse is also available. Checkout this example React app to see how it is used. This is a modern alternative to LHC-Forms

FHIRFormJS is WIP (not production ready). Pull requests are welcome (See CONTRIBUTING.md) and add issues and feature requests by clicking on the 'issues' tab. :point_up:

Installation

npm i --save fhirformjs

Usage example (In a React component)

  • FHIRFormJS is framework independent and can be used with other frameworks such as Vue / Angular.
  • Testq1 is a FHIR Questionnaire object import { FhirJsonForm, FhirJsonResp } from 'fhirformjs' import Form from "@rjsf/core" const resp = FhirJsonForm(Testq1) let formData = {} let respData = {} function handleSubmit(data){ respData = FhirJsonResp(resp.model, data, resp.schema) console.log(JSON.stringify(respData)) } return ( <div className="App"> <header className="App-header"> <Form schema={resp.schema} uiSchema={resp.uiSchema} formData={formData} onSubmit={e => handleSubmit(e.formData)} /> </header> </div> ); ### Update since v0.8.0: Backend API import { FhirBackend } from 'fhirformjs' const backend = new FhirBackend('https://lforms-fhir.nlm.nih.gov/baseR4'); console.log(backend.getTableOfContents()) console.log(backend.getQuestionnaire('2050148')) ### See an example :point_left:

Give us a star ⭐️

If you find this project useful, give us a star. It helps others discover the project.

Author

Contributor(s)

Owner

  • Name: Bell Eapen
  • Login: dermatologist
  • Kind: user
  • Location: FL, USA
  • Company: Mayo Clinic / McMaster University

MD, PhD. Coding @E-Health to Save Lives!

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Eapen"
  given-names: "Bell Raj"
  orcid: "https://orcid.org/0000-0003-3208-4977"
- family-names: "Costa"
  given-names: "Andrew"
  orcid: "https://orcid.org/0000-0001-9212-5641"
- family-names: "Archer"
  given-names: "Norm"
  orcid: "https://orcid.org/0000-0003-4666-9570"
- family-names: "Sartipi"
  given-names: "Kamran"
  orcid: "https://orcid.org/0000-0002-3588-5991"
title: "NPM module to convert FHIR Questionnaire JSON to JSON Schema for form rendering"
version: 0.9.3
date-released: 2021-06-08
url: "https://github.com/dermatologist/fhirformjs"
preferred-citation:
  type: article
  authors:
  - family-names: "Eapen"
    given-names: "Bell Raj"
    orcid: "https://orcid.org/0000-0003-3208-4977"
  - family-names: "Costa"
    given-names: "Andrew"
    orcid: "https://orcid.org/0000-0001-9212-5641"
  - family-names: "Archer"
    given-names: "Norm"
    orcid: "https://orcid.org/0000-0003-4666-9570"
  - family-names: "Sartipi"
    given-names: "Kamran"
    orcid: "https://orcid.org/0000-0002-3588-5991"
  # doi: "10.2196/18149"
  journal: "Stud Health Technol Inform"
  # month: 4
  start: 80
  end: 85
  title: "FHIRForm: An Open-Source Framework for the Management of Electronic Forms in Healthcare"
  # issue: 1
  volume: 257
  year: 2019

GitHub Events

Total
  • Watch event: 1
  • Delete event: 54
  • Issue comment event: 42
  • Push event: 28
  • Pull request review event: 6
  • Pull request event: 99
  • Fork event: 1
  • Create event: 53
Last Year
  • Watch event: 1
  • Delete event: 54
  • Issue comment event: 42
  • Push event: 28
  • Pull request review event: 6
  • Pull request event: 99
  • Fork event: 1
  • Create event: 53

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 209
  • Total Committers: 5
  • Avg Commits per committer: 41.8
  • Development Distribution Score (DDS): 0.335
Past Year
  • Commits: 3
  • Committers: 2
  • Avg Commits per committer: 1.5
  • Development Distribution Score (DDS): 0.333
Top Committers
Name Email Commits
Bell Eapen g****b@g****t 139
dependabot[bot] 4****] 34
Automated Version Bump g****n 23
Marco Ferreira m@r****c 12
Bell Eapen c****9@g****t 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 0
  • Total pull requests: 214
  • Average time to close issues: N/A
  • Average time to close pull requests: about 2 months
  • Total issue authors: 0
  • Total pull request authors: 2
  • Average comments per issue: 0
  • Average comments per pull request: 0.78
  • Merged pull requests: 45
  • Bot issues: 0
  • Bot pull requests: 205
Past Year
  • Issues: 0
  • Pull requests: 82
  • Average time to close issues: N/A
  • Average time to close pull requests: about 1 month
  • Issue authors: 0
  • Pull request authors: 2
  • Average comments per issue: 0
  • Average comments per pull request: 0.73
  • Merged pull requests: 20
  • Bot issues: 0
  • Bot pull requests: 77
Top Authors
Issue Authors
Pull Request Authors
  • dependabot[bot] (233)
  • dermatologist (10)
Top Labels
Issue Labels
Pull Request Labels
dependencies (230) javascript (140) github_actions (90)

Packages

  • Total packages: 1
  • Total downloads:
    • npm 90 last-month
  • Total dependent packages: 1
  • Total dependent repositories: 2
  • Total versions: 15
  • Total maintainers: 1
npmjs.org: fhirformjs

FHIR Questionnaire To Form Converter for rendering

  • Versions: 15
  • Dependent Packages: 1
  • Dependent Repositories: 2
  • Downloads: 90 Last month
Rankings
Forks count: 7.0%
Dependent repos count: 7.6%
Stargazers count: 8.2%
Downloads: 9.4%
Average: 10.6%
Dependent packages count: 21.0%
Maintainers (1)
Last synced: 6 months ago

Dependencies

package.json npm
  • @size-limit/preset-small-lib ^7.0.3 development
  • husky ^7.0.0 development
  • size-limit ^7.0.3 development
  • tsdx ^0.14.1 development
  • tslib ^2.2.0 development
  • typedoc ^0.22.3 development
  • typescript ^4.2.4 development
  • @ahryman40k/ts-fhir-types ^4.0.34
  • axios ^0.27.2
  • uuidv4 ^6.2.7
.github/workflows/bump.yml actions
  • actions/checkout v3 composite
  • actions/setup-node v2.5.1 composite
  • charmixer/auto-changelog-action v1 composite
  • dermatologist/gh-action-bump-version beapen-1 composite
.github/workflows/docs.yml actions
  • JamesIves/github-pages-deploy-action v4.3.0 composite
  • actions/checkout v3 composite
  • actions/setup-node v2.5.1 composite
.github/workflows/main.yml actions
  • actions/cache v3.3.2 composite
  • actions/checkout v3 composite
  • actions/setup-node v2.5.1 composite
.github/workflows/publish.yml actions
  • actions/checkout v3 composite
  • actions/setup-node v2.5.1 composite