MedVertical

Developers · Validation engine

Embed FHIR validation in TypeScript.

Use the Apache-2.0 engine directly in Node.js, CI, GitHub Actions, or your own TypeScript backend.

Available now · v0.6.2 · Apache-2.0

Smallest useful example

Validate one resource in process.

Pass the resource, profile, and FHIR release explicitly. The engine returns findings to your application; it does not hide them behind a hosted API.

Install the engine

import { recordsValidator } from '@records-fhir/validator';const issues = await recordsValidator.validateRequest({  resource: { resourceType: 'Patient', id: 'example' },  profileUrl: 'http://hl7.org/fhir/StructureDefinition/Patient',  fhirVersion: 'R4',});

Expected contract

What comes back

A normalized list of validation findings that your service can render, store, or turn into its own gate decision.

RuntimeNode.js / TypeScript, no JVM and no Records server required
InputsResource, FHIR release, profile and configured terminology context
OutputDeterministic findings returned to the calling application

Built for one clear integration job

The surface stays small; Records carries the wider operational loop when you need it.

In-process API

Validate FHIR resources without a Records server or Java runtime.

Eight validation aspects

Structure, profiles, terminology, references, invariants, custom rules, metadata, and anomaly signals.

Version-aware packages

Load core definitions and pinned implementation-guide packages for the release you are validating.

Scope

The boundary

Know what this surface owns before you put it into a workflow.

What remains outside this surface

The engine returns deterministic findings. Records adds connected servers, run history, baselines, comparisons, governance, and evidence reports.