AI-powered clinical form platform

Dynamic clinical forms for every EMR, every geography.

EMRs and EHRs need endless forms — for compliance, assessments, and daily care. Building them by hand is slow, and every region needs different ones, so the static forms baked into an EHR never keep up. OpenMedForm lets you generate dynamic forms with AI, coded to SNOMED CT, LOINC and ICD-10, drop them into your product with native renderers, and store every response as JSON in your own database.

Renders natively inReactAngularFlutter

Too many forms

Every EMR/EHR needs dozens of forms for compliance, risk assessments, consent and daily workflows. Authoring each one by hand does not scale.

Every geography differs

Regulations, languages and clinical practice vary by region — the same form needs many variants. One static set can never fit them all.

Static EHR forms break

Forms hard-coded into an EHR are rigid and slow to change. Clinical teams end up waiting on engineering for every small update.

Build once. Render anywhere. Own your data.

OpenMedForm sits alongside your EMR. Describe a form or upload a PDF, and AI generates a versioned JSON schema. Embed it with our React, Angular or Flutter renderer, and every submission is scored server-side and stored as JSON — in your database, not ours.

Your EMR / EHRAny system, any regionOpenMedFormAI Form BuilderPrompt · PDF · image → schemaVersioned JSON SchemasImmutable published versionsServer-side ScoringClinical risk, recomputedEmbedded in your appReact RendererAngular RendererYour databaseJSON, you own itSchemas and submissions stay as JSON in your own store — OpenMedForm never holds your clinical data.

AI form builder

Generate complex clinical forms from a prompt, PDF, or image — with multiple LLM providers.

React, Angular & Flutter renderers

Drop-in renderers for web and mobile share one schema, so the same form runs in your EMR and on the ward tablet.

Clinical code dictionary

AI maps fields and answers to SNOMED CT, LOINC and ICD-10 codes; clinicians review and approve them in a built-in dictionary, and the codes live in the form schema itself.

JSON in your database

Schemas and submissions are plain JSON. Keep them in your own store — full data ownership.

Server-side scoring

Clinical risk scores are recalculated on the server at submission — never trusting the client.

Print-ready A4 & PDF

Every form renders to a print-accurate A4 document — preview, print, or generate a PDF from the same JSON.

For developers

Integrate with your EMR in 3 steps

From paper form to a native screen inside your EMR — no form engineering required.

1

Upload your hardcopy

Scan or photograph your existing paper form and upload the PDF or image. AI converts it into a digital clinical form — fields, sections and scoring included.

2

Download the form JSON

Every form is a single portable, versioned JSON definition. Export it from the forms list with one click.

3

Render it in your EMR

Install the React, Angular or Flutter renderer, load the JSON, and the form appears natively in your product — web or mobile. Submissions are plain JSON for your own database.

Install the renderer, load the JSON

React
npm install @openmedform/react-form-renderer
import { FormRenderer } from '@openmedform/react-form-renderer';

function EncounterForm({ formJson }) {
  return (
    <FormRenderer
      definition={formJson}   // the JSON you downloaded
      onSubmit={(result) => saveToYourDb(result)}
    />
  );
}
Angular
npm install @openmedform/angular-form-renderer
import { OmfFormComponent } from '@openmedform/angular-form-renderer';

@Component({
  standalone: true,
  imports: [OmfFormComponent],
  template: `
    <omf-form
      [definition]="formJson"
      (dataChange)="saveToYourDb($event)"
    ></omf-form>`,
})
export class EncounterFormComponent {}
# pubspec.yaml
dependencies:
  openmedform_flutter_renderer:
    git:
      url: https://github.com/daivahealth/openmedform-flutter.git
      path: packages/openmedform_flutter_renderer
import 'package:openmedform_flutter_renderer/openmedform_flutter_renderer.dart';

OmfFormRenderer(
  definition: definition,  // the JSON you downloaded
  onChange: (data) => saveToYourDb(data),
)

Need a paper copy? The same JSON renders to a print-accurate A4 document (and PDF) via @openmedform/form-print-engine.

Frequently asked questions

What is OpenMedForm?
OpenMedForm is an open-source, AI-powered clinical form builder. It generates versioned JSON form schemas from a prompt or an uploaded PDF, renders them natively inside an EMR or EHR, and scores clinical risk assessments server-side.
How does OpenMedForm integrate with an EMR?
Install the React, Angular or Flutter renderer package, load the form JSON, and the form appears as a native screen in your product. No form engineering is required, and the same schema also renders to a print-accurate A4 document and PDF.
Which clinical terminologies does OpenMedForm support?
AI maps fields and answer options to SNOMED CT, LOINC and ICD-10 codes. Clinicians review and approve those codes in a built-in dictionary, and the approved codes are stored in the form schema itself.
Where is form data stored?
Form schemas and submissions are plain JSON, so they can be kept in your own database. Scores are recalculated on the server at submission time rather than trusted from the client.
Is OpenMedForm an EMR or a clinical decision support system?
No. OpenMedForm sits alongside an EMR as a form authoring, rendering and submission layer. It calculates clinical risk scores but does not issue treatment recommendations.

Ready to modernise your clinical forms?

Create your organization in seconds. No credit card required.

Create your account