About this documentation
This site is an implementation-specific reference for @openmrs/ngx-formentry (opens in a new tab), the optional Angular Form Engine used by O3 distributions that explicitly include @openmrs/esm-form-entry-app.
Which workflow should I use?
| Your environment | Form renderer | Authoring workflow | Documentation |
|---|---|---|---|
| OpenMRS Reference Application | React Form Engine | Built-in O3 Form Builder, including React preview | Canonical O3 Forms guide (opens in a new tab) |
Distribution with @openmrs/esm-form-entry-app | Angular Form Engine | Edit JSON and test in that Angular-enabled distribution; there is no supported current visual builder | This site's Angular Form Engine reference |
Existing deployment of ampath/ngx-openmrs-formbuilder | Legacy builder and its bundled preview | Legacy workflow retained for maintenance only | Pages labelled Archived AMPATH Form Builder |
OpenMRS Reference Application
- Form renderer
- React Form Engine
- Authoring workflow
- Built-in O3 Form Builder, including React preview
- Documentation
- Canonical O3 Forms guide (opens in a new tab)
Distribution with @openmrs/esm-form-entry-app
- Form renderer
- Angular Form Engine
- Authoring workflow
- Edit JSON and test in that Angular-enabled distribution; there is no supported current visual builder
- Documentation
- This site's Angular Form Engine reference
Existing deployment of ampath/ngx-openmrs-formbuilder
- Form renderer
- Legacy builder and its bundled preview
- Authoring workflow
- Legacy workflow retained for maintenance only
- Documentation
- Pages labelled Archived AMPATH Form Builder
The O3 Form Builder that ships with the Reference Application targets and previews the React Form Engine. Its preview does not validate Angular runtime behavior. The archived AMPATH builder also does not target the current Angular engine and must not be treated as its supported visual builder.
Shared schema, different implementations
Both engines consume forms based on the standard O3 form schema (opens in a new tab). Conformance to that schema establishes a shared document structure, but it does not guarantee that every field type, expression, validation rule, data source, or payload behavior has parity across React and Angular.
Use the canonical O3 guide for the default React workflow. Use these pages only for Angular behavior, and verify each form in the engine that will render it in production.