fhirformjs
    Preparing search index...

    fhirformjs

    fhirformjs

    npm version npm Build Known Vulnerabilities Documentation

    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:

    npm i --save fhirformjs
    
    • 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>
    );

    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'))

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