# @aehrc/smart-forms-renderer

> FHIR Structured Data Captured (SDC) rendering engine for Smart Forms

Latest version **1.5.0** (published 2026-09-10) · Apache-2.0 license · 0 weekly downloads

## Install

```sh
npm install @aehrc/smart-forms-renderer
pnpm add @aehrc/smart-forms-renderer
yarn add @aehrc/smart-forms-renderer
bun add @aehrc/smart-forms-renderer
```

## Health

**Score 75/100 (B)** — status: active.

Positive: has types; esm support; no vulnerabilities; has provenance; recently updated; high maintenance score; high quality score.

Warnings: low downloads.

## Facts

| | |
|---|---|
| Version | 1.5.0 |
| Published | 2026-09-10 |
| First published | 2023-08-30 |
| Weekly downloads | 0 |
| License | Apache-2.0 |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Dependencies | 32 |
| Unpacked size | 3.3 MB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Provenance | attested (GitHub Actions) |
| GitHub stars | 62 |
| Author | AEHRC |
| Maintainers | clinnygee, janadh, maryammehdiza, johngrimes, leoniedickson |

## Links

- npm: https://www.npmjs.com/package/@aehrc/smart-forms-renderer
- Repository: https://github.com/aehrc/smart-forms
- Homepage: https://github.com/aehrc/smart-forms#readme
- Issues: https://github.com/aehrc/smart-forms/issues
- npm.io page: https://npm.io/package/@aehrc/smart-forms-renderer

## Dependencies (32)

- [dayjs](https://npm.io/package/dayjs.md) ^1.11.21
- [nanoid](https://npm.io/package/nanoid.md) ^5.1.16
- [zustand](https://npm.io/package/zustand.md) ^5.0.14
- [@mui/lab](https://npm.io/package/@mui/lab.md) ^7.0.0-beta.13
- [fhirpath](https://npm.io/package/fhirpath.md) ^4.10.1
- [deep-diff](https://npm.io/package/deep-diff.md) ^1.0.2
- [js-base64](https://npm.io/package/js-base64.md) ^3.7.8
- [react-dnd](https://npm.io/package/react-dnd.md) ^16.0.1
- [fhirclient](https://npm.io/package/fhirclient.md) ^2.6.3
- [fast-equals](https://npm.io/package/fast-equals.md) ^5.2.2
- [style-to-js](https://npm.io/package/style-to-js.md) ^1.1.21
- [usehooks-ts](https://npm.io/package/usehooks-ts.md) ^3.1.1
- [@mui/material](https://npm.io/package/@mui/material.md) ^7.1.1
- [@emotion/react](https://npm.io/package/@emotion/react.md) ^11.14.0
- [react-markdown](https://npm.io/package/react-markdown.md) ^8.0.7
- [@emotion/styled](https://npm.io/package/@emotion/styled.md) ^11.14.1
- [lodash.debounce](https://npm.io/package/lodash.debounce.md) ^4.0.8
- [fhir-sdc-helpers](https://npm.io/package/fhir-sdc-helpers.md) ^0.1.0
- [@fontsource/inter](https://npm.io/package/@fontsource/inter.md) ^5.2.8
- [html-react-parser](https://npm.io/package/html-react-parser.md) 4.2.10
- [lodash.difference](https://npm.io/package/lodash.difference.md) ^4.5.0
- [@fontsource/roboto](https://npm.io/package/@fontsource/roboto.md) ^5.2.10
- [@aehrc/sdc-populate](https://npm.io/package/@aehrc/sdc-populate.md) ^4.7.2
- [@mui/icons-material](https://npm.io/package/@mui/icons-material.md) ^7.1.1
- [@mui/x-date-pickers](https://npm.io/package/@mui/x-date-pickers.md) ^7.28.3
- [lodash.intersection](https://npm.io/package/lodash.intersection.md) ^4.4.0
- [react-beautiful-dnd](https://npm.io/package/react-beautiful-dnd.md) ^13.1.1
- [@tanstack/react-query](https://npm.io/package/@tanstack/react-query.md) ^5.90.5
- [lodash.differencewith](https://npm.io/package/lodash.differencewith.md) ^4.5.0
- [react-dnd-html5-backend](https://npm.io/package/react-dnd-html5-backend.md) ^16.0.1
- [@fontsource/material-icons](https://npm.io/package/@fontsource/material-icons.md) ^5.2.7
- [@aehrc/sdc-template-extract](https://npm.io/package/@aehrc/sdc-template-extract.md) ^1.0.16

## Recent versions

- 1.5.0 (latest) — 2026-09-10
- 1.0.0-alpha.110.dev1 (alpha) — 2025-10-14
- 1.0.0-alpha.48.dev2 (dev) — 2025-04-28
- 1.4.0 — 2026-07-03
- 1.3.1 — 2026-03-25
- 1.3.0 — 2026-03-11
- 1.2.14 — 2026-03-05
- 1.2.13 — 2026-02-12
- 1.2.12 — 2026-01-13
- 1.2.11 — 2025-11-03
- 1.2.10 — 2025-10-31
- 1.2.9 — 2025-10-31
- 1.2.8 — 2025-10-28
- 1.2.7 — 2025-10-28
- 1.2.6 — 2025-10-28
- … 245 more at https://npm.io/package/@aehrc/smart-forms-renderer/versions

## README

# Smart Forms Renderer

A React-based library that contains the Questionnaire renderer used in the Smart Forms app. 
It acts as a reference implementation for the [SDC Form Filler](https://hl7.org/fhir/uv/sdc/CapabilityStatement-sdc-form-filler.html).

<h4><a href="https://smartforms.csiro.au/docs/dev">Check out the documentation 📚</a></h4>

<h4><a href="https://smartforms.csiro.au/docs">Check out Questionnaire examples in Storybook 📚</a></h4>

## Entry points

| Import | Contains |
| ------ | -------- |
| `@aehrc/smart-forms-renderer` | The full renderer, including the Material UI component tree. |
| `@aehrc/smart-forms-renderer/engine` | The form engine only: the stores, `buildForm`, response traversal, repopulation and observation-based extraction. No UI package loads at runtime, so it suits a host that renders the form itself. |

`/engine` is a strict subset of the root barrel, so nothing is public by virtue of
appearing there alone. Both are bundler targets: the package ships ES modules with
extensionless specifiers and does not set `"type": "module"`, so it is not loadable by
Node directly.

Deep imports of internal `lib/...` paths still resolve, but they are a compatibility
surface rather than API. Prefer the root barrel or `/engine`.

View the changelog [here](https://github.com/aehrc/smart-forms/blob/main/CHANGELOG.md).

We recently updated to v1.0.0 which includes some breaking changes. Please refer to the [migration guide](https://github.com/aehrc/smart-forms/blob/main/MIGRATION-v1.0.md) for more information.

---

Copyright © 2025, Commonwealth Scientific and Industrial Research Organisation (CSIRO) ABN 41 687 119 230. All rights reserved.

---
_Source: https://npm.io/package/@aehrc/smart-forms-renderer · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
