Releases: optimajet/formengine
Form Engine 8.0.0
April 21, 2026
Overview
FormEngine 8.0.0 removes Emotion-based style injection from Core, Designer, and view packages. Component styles are now shipped as static assets (including CSS modules where applicable), which works better with strict Content Security Policy rules. The designer gains finer control over main menu items, and viewer localization behavior is now explicit: FormViewerLite applies NoopLocalizationEngine by default, while FormViewer accepts an explicit localizationEngine, so you can disable the default Fluent localization behavior with NoopLocalizationEngine or provide a custom ILocalizationEngine. The embedded Monaco editor is also updated. This release includes several localization and RTL styling fixes.
Why update
- Adopt CSP-friendly Core styling by importing
@react-form-builder/core/assets/styles.cssinstead of relying on runtime Emotion injection. - Use viewer localization control based on the runtime you choose: FormViewerLite uses NoopLocalizationEngine by default, while FormViewer accepts an explicit localizationEngine: use NoopLocalizationEngine to disable the default Fluent localization behavior, or pass your own ILocalizationEngine implementation.
- Customize designer main menu entries (hide, style, or replace controls) via Menu items customization.
- Get an updated Monaco editor, plus fixes for the localization editor and RTL / screen styles.
Key features
- Core styles ship as static CSS for stricter CSP: import
@react-form-builder/core/assets/styles.cssper Install FormEngine Core. - FormViewerLite uses NoopLocalizationEngine by default; FormViewer takes localizationEngine on FormViewerProps, so you can use NoopLocalizationEngine or a custom ILocalizationEngine.
- Menu items customization for Designer main-menu controls (
MainMenu_Item_*keys). - Monaco editor updated to 0.55.1.
Changelog
Breaking changes
- FormEngine packages now deliver styling through static CSS and CSS modules instead of injecting FormEngine-owned rules with Emotion. Import the published stylesheets for each stack you use (for Core,
@react-form-builder/core/assets/styles.css; see Install FormEngine Core and other package docs). Your application may still resolve@emotion/*or similar CSS-in-JS from third-party dependencies (for example, Material UI’s default Emotion integration). This is independent of FormEngine’s own styling model. - The library no longer patches
displayNameon component metadata. Use typeName on DefinerData, or, after build, read type on the assembled Model when filtering components. - Removed
formEngineRsuiteCssLoader. Use ltrCssLoader and rtlCssLoader from@react-form-builder/components-rsuitewith withCssLoader (for example in FormEngine Designer usage). - Tightened the root ESLint preset for contributors:
- type-aware TypeScript (
plugin:@typescript-eslint/recommended-type-checked) - React performance linting (
plugin:react-perf/all) - stricter module boundaries (
import/no-extraneous-dependenciesand related import rules) - consistent type-only imports and exports (
consistent-type-imports,consistent-type-exports,@typescript-eslint/no-import-type-side-effects) - required variable initializers (
@typescript-eslint/init-declarations) - JSDoc on public symbols (
jsdoc/require-jsdoc).
- type-aware TypeScript (
- Removed implicitly injected default property values for:
SimpleFieldclear now sets the field value toundefinedinstead of the controlmodelValue.
Update instructions
Update all packages to version 8.0.0.
Stylesheets and CSS modules. FormEngine packages now combine published global CSS (where exposed in package.json exports) with CSS modules compiled into the bundle. Import only the paths below; do not reference internal *.module.css files from consumers.
@react-form-builder/core— addimport '@react-form-builder/core/assets/styles.css'for anyFormViewer, field rendering, or embedded designer preview. Details: Install FormEngine Core.@react-form-builder/designer— addimport '@react-form-builder/designer/assets/designer.ltr.min.css'orimport '@react-form-builder/designer/assets/designer.rtl.min.css'to match layout direction, in addition to Core styles. Details: Install FormEngine Designer.@react-form-builder/components-rsuite— register ltrCssLoader and rtlCssLoader through withCssLoader (replacingformEngineRsuiteCssLoader). If you do not use loaders, you can import@react-form-builder/components-rsuite/assets/styles.ltr.cssand, when needed,@react-form-builder/components-rsuite/assets/styles.rtl.cssinstead.@react-form-builder/components-material-ui— keep@emotion/reactand@emotion/styledfor Material UI itself, and add the Core stylesheet import above. FormEngine no longer injects its own styles through Emotion.@react-form-builder/components-mantine— keep importing Mantine’s CSS (for example@mantine/core/styles.cssand packages you enable). Add the Core stylesheet. FormEngine-specific styling is shipped as CSS modules inside the Mantine pack. Overview: Mantine components.- Bundles and add-ons using composed styles follow the same rules as the underlying Core, Designer, and RSuite packages. These packages bundle scoped CSS and do not add extra FormEngine CSS entry points beyond their dependencies. Aff...
Form Engine 7.15.0
April 1, 2026
Overview
FormEngine 7.15.0 adds optional callbacks when the designer or preview language changes, extends onFormElementAdd with the preset name when a component is added from a preset, and fixes preset display in the component palette. The public FormEngine example on GitHub now demonstrates IndexedDB-backed form storage. This release also migrates several repository and sample-app scripts to TypeScript and includes dependency updates across the monorepo and examples.
Why update
- React to builder and viewer language switches with onBuilderLanguageChange and onViewerLanguageChange.
- Read presetName from onFormElementAdd when users add components from presets.
- Avoid misleading “InternalError” labels for presets in the component palette.
- Align the public example with the documented form storage workflow.
Key features
- Added onBuilderLanguageChange and onViewerLanguageChange on FormBuilderProps.
- Added optional presetName to the onFormElementAdd payload (see Tracking component add and remove events).
- Updated the public FormEngine example to use form storage (IndexedDB) alongside the designer.
Changelog
Update instructions
Update all packages to version 7.15.0. No additional actions are required.
Features
- Added onBuilderLanguageChange and onViewerLanguageChange callbacks on FormBuilderProps for builder and preview language changes.
- Added optional presetName to the onFormElementAdd callback payload when a component is inserted from a preset.
- Documented presetName in Tracking component add and remove events.
- Wired IndexedDB form storage into the premium FormEngine example (
examples/premium/formengine) to match the form storage documentation.
Bug fixes
- Fixed preset entries showing as
InternalErrorin the component picker when preset metadata was unavailable. - Fixed incorrect links in Integrating FormEngine with Angular.
Security
- Bumped
handlebarsfrom4.7.8to4.7.9. - Bumped
node-forge(transitive dependency updates). - Bumped
socket.io-parser(including in Angular examples).
Chore
- Migrated selected build, release, and sample-app automation scripts from JavaScript and PowerShell to TypeScript.
- Bumped
flattedfrom3.3.3to3.4.2. - Bumped
yamlfrom1.10.2to1.10.3. - Bumped
brace-expansionfrom1.1.11to1.1.13. - Bumped
picomatchacross examples and sample apps. - Bumped
path-to-regexpfrom8.3.0to8.4.0in tooling. - Bumped
locutusin the Vue bundle-size example underexamples/community/bundle-size.
Resources
Form Engine 7.14.0
7.14.0
March 19, 2026
Overview
FormEngine 7.14.0 focuses on publishing @react-form-builder/indexed-db-form-storage for IndexedDB-backed form storage and includes multiple bug fixes across the designer and viewer. This release also includes maintenance updates and dependency updates.
Why update
- Publish @react-form-builder/indexed-db-form-storage for browser-based form persistence.
- Document how to wire it to the designer via
formStorageusing the Form storage guide. - Keep your development tooling and documentation up to date with maintenance fixes.
Key features
- Published @react-form-builder/indexed-db-form-storage for browser-based form persistence.
- Updated Form storage documentation with the IndexedDB example.
Changelog
Update instructions
Update all packages to version 7.14.0. No additional actions are required.
Features
- Published @react-form-builder/indexed-db-form-storage for browser-based form persistence.
- Documented how to connect it to the designer using the FormBuilder formStorage prop and the IFormStorage interface.
- Added a new guide: Integrating FormEngine with Angular.
Enhancements
- Improved developer experience by fixing missing documentation warnings for
InsertPosition.
Bug fixes
- Fixed "not found" not displayed in components panel.
- Fixed Mantine
withAsteriskso it correctly marks the required form field. - Fixed style editor visibility for
RsCellandRsHeaderCell. - Fixed an issue where the nested embedded form example looked compressed.
- Fixed functional argument editor incorrectly checks function body.
- Fixed
MUIbreakage with Webpack. - Fixed
package.jsonbeing compiled.
Security
- Bumped
nextfrom16.1.5to16.1.7in/examples/premium/with-nextjs/with-nextjs-v16. - Bumped
undicifrom6.23.0to6.24.1in/examples/premium/with-remix/with-remix-v2. - Bumped
locutusfrom3.0.0to3.0.14in/examples/community/bundle-size.
Chore
- Bumped
tarfrom7.5.2to7.5.11. - Bumped
lernafrom9.0.3to9.0.6.
Resources
Form Engine 7.13.0
7.13.0
March 10, 2026
Overview
FormEngine 7.13.0 delivers improvements across the designer, components, and build tooling. This release introduces a new MuiDatePicker, adds designer customization features, improves core package tree shaking, and includes a broad set of maintenance updates for dependencies and documentation.
Why update
- Get new UI capabilities, including MuiDatePicker and component toolbar customization.
- Improve designer integrations with add/remove callbacks and updated component ref handling (refValue).
- Benefit from bug fixes in wizard navigation, modal behavior, palette rendering, and release tooling.
Key features
- Added MuiDatePicker support.
- Added component toolbar customization in the designer.
- Added designer events for add/remove callbacks.
- Added direct component ref handling in action events via refValue (DOM element, imperative handle, or
null).
Changelog
Update instructions
Update all packages to version 7.13.0. No additional actions are required.
Features
- Added component toolbar customization.
- Added designer events for add/remove callbacks.
- Added direct refValue support for component refs in action events.
- Added MuiDatePicker.
- Added Mantine to bundle size comparison.
Enhancements
- Improved tree shaking in the core library.
- Added a link to the bundle size comparison on public GitHub.
- Replaced the documentation search engine with Algolia.
- Sorted union types in API reference output.
Bug fixes
- Fixed an issue where changing an action name could crash the application.
- Fixed
closeModalbehavior whenonCloseis used. - Fixed palette rendering with multiple system components.
Security
- Bumped
rollupto4.59.0. - Bumped
multerto2.1.0in the examples. - Bumped
immutableto5.1.5in the examples. - Bumped
locutusto3.0.0in the examples. - Bumped
minimatchto3.1.4in the examples. - Bumped
ajvto6.14.0in the/examples/premium/with-remix/with-remix-v2. - Bumped
ajvto8.18.0in the/examples/community/bundle-size.
Form Engine 7.12.0
7.12.0
February 17, 2026
Overview
FormEngine 7.12.0 introduces Mantine components as a new option in the component library, alongside Material UI and RSuite. This release
also adds JSON schemas for component libraries, improves configuration options with support for passing user-defined context
and configuring initial state, and contains multiple bug fixes and dependency updates across the platform.
Why update
- Start building forms with the new Mantine components set.
- Take advantage of JSON schemas for component libraries and improved configuration options.
- Benefit from fixes in RSuite views, nested forms, templates, documentation, and test infrastructure, plus updated dependencies.
Key features
- Mantine components integration for building forms with the Mantine UI library.
- JSON schemas for component libraries.
- Extended configuration options, including support for passing user-defined context.
Changelog
Update instructions
Update all packages to version 7.12.0. No additional actions are required.
Features
- Added Mantine components to the component library as an alternative to Material UI and RSuite.
- Added JSON schemas for component libraries to improve tooling and validation.
- Added support for passing user-defined context and initial state so that advanced scenarios can inject additional data into forms at runtime.
Bug fixes
- Fixed an issue where the RSuite view could break styles on the first load.
- Fixed a problem where every created form appeared as a Template in the templates section.
- Fixed extra indentation in nested forms so layouts render correctly.
- Fixed documentation issues related to the data table dark theme.
- Fixed a bug where the modal template picker could appear empty.
Resources
- Core documentation: Storing user-defined data.
- Designer documentation: Storing user-defined data updated with the new features.
Security
- Bumped
qsfrom6.14.1to6.14.2Remix example. - Bumped
axiosfrom1.13.2to1.13.5. - Bumped
@isaacs/brace-expansionfrom5.0.0to5.0.1.
Form Engine 7.11.0
7.11.0
February 3, 2026
Overview
FormEngine 7.11.0 focuses on core package structure, MUI component improvements, and dependency maintenance. Barrel files have been removed from the core package to improve tree shaking and reduce bundle size. MUI components now support disabled and read-only properties consistently, and new components (MuiDialog, MuiTextField type property) extend the Material UI integration.
Why update
- Benefit from a leaner core package and better tree shaking after barrel file removal.
- Use MUI disabled and read-only support and new component options (MuiDialog, MuiTextField type).
- Stay on updated dependencies (lodash, diff, ESLint, Next.js) and bug fixes for designer, localization, and tests.
Key features
- Leaner core package after barrel file removal (improved tree shaking).
- MUI disabled and read-only support and new component options (MuiDialog, MuiTextField type).
- Dependency and security updates across examples and core.
Changelog
Update instructions
Update all packages to version 7.11.0. No additional actions are required.
Features
- Added MuiDialog component (see Forms JSON — Modal component).
- Added type property support to MuiTextField.
- Added support for disabled and read-only properties for MUI components (see Disabled and read-only).
Enhancements
- Removed barrel files from the core package to improve tree shaking and package structure.
- Moved bundle-size tooling to public examples and dropped install-from-tgz flow.
- Extended FormEngine core documentation.
- Documented bundle size comparison with competitors.
- Bumped Next.js from 15.4.10 to 16.1.5 in
/examples/premium/with-nextjs. - Bumped ESLint and related packages in premium examples (with-nextjs-v16, with-remix-v2).
Bug fixes
- Fixed Vitest globals causing Jest types to be used in tests.
- Fixed localization fallback behavior.
- Fixed designer issue where RSuite CSS overrode MUI styles.
- Fixed IndexedDB error:
'demo-presets' is not a known object store name. - Fixed read-only and disabled flags not always being passed through the component hierarchy.
- Fixed CI build failure.
- Addressed test environment limitation:
Window's getComputedStyle()with pseudo-elements (not implemented in test runner).
Resources
- Split documentation for FormEngine Core and FormEngine Designer.
- Added size bundle comparison article.
Security
- Bumped
lodashfrom 4.17.21 to 4.17.23 in/srcand in premium examples (formengine, with-nextjs-v15, with-remix-v2). - Bumped
lodash-esfrom 4.17.21 to 4.17.23 in/examples/premium/with-formik. - Bumped
difffrom 5.2.0 to 5.2.2 in/examples/premium/with-remix/with-remix-v2.
Form Engine 7.10.0
7.10.0
January 16, 2026
Overview
FormEngine 7.10.0 introduces integration with the Material UI components library, allowing you to build forms with one of the most popular React UI frameworks.
Additionally, this release improves theming capabilities in FormViewer, including support for dynamic theme switching, making your applications more flexible and visually consistent.
Why update
- Start building forms with Material UI components directly in FormEngine.
- Benefit from improved theming and customization options in FormViewer.
- Includes important security updates for dependencies and bug fixes that improve reliability.
Key features
- Integration with the Material UI components library for building and rendering forms.
- Improved theming capabilities in FormViewer, including support for theme switching.
Changelog
Update instructions
Update all packages to version 7.10.0. No additional actions are required.
Features
- Added integration with the Material UI components library.
Enhancements
- Added support for BuilderThemeProvider in RsLocalizationWrapper to enable theme switching in FormViewer when using RSuite components.
- Added new
ComponentStoremethods:addValidationRulehasValidationRuleremoveValidationRule
- Extended the parameters of Definer.icon to support using either a component icon or an icon name.
- Added the required annotation builder for
booleanproperties that mark a field as required. - Added Annotation.controlsRequiredProp to indicate that a property value controls the required flag.
- Added a link to the npm package on the documentation page for each component.
- Renamed the Generate JSON form schema menu item to Export JSON form schema.
Bug fixes
- Fixed an error when no form storage was provided:
AlwaysRejectFormStorage.ts:8 Uncaught (in promise) Error: Not implemented. - Fixed an issue where the Next.js example was broken with @react-form-builder/core@7.9.0.
- Fixed the
Module not found: Package path . is not exported from packageerror inpremium/examples/with-nextjs/with-nextjs-v15in FormViewer.
Resources
- Split the release notes in the documentation into separate pages so that each release can be read in detail.
- Updated and extended the article with instructions on how to generate a JSON schema.
Security
- Bumped
difffrom 8.0.2 to 8.0.3 in/src. - Bumped
qsandexpressin/examples/community/file-upload-server. - Bumped
qsandexpressin/examples/premium/with-remix/with-remix-v2. - Bumped
@remix-run/server-runtime,@remix-run/node,@remix-run/react,@remix-run/serve, and@remix-run/devin/examples/premium/with-remix/with-remix-v2. - Bumped
nextfrom 15.4.8 to 15.4.10 in/examples/premium/with-nextjs/with-nextjs-v15.
Form Engine 7.9.0
7.9.0
December 11, 2025
New
- Added
FormViewerLite, a lightweight version of the form viewer that uses the noop localization engine by default. - Added JSON Schema validation.
Changed
- Removed the explicit
includesfromtsconfig.json.
Fixed bugs
- Added a hint for the orientation button in mobile/tablet mode.
- Fixed an issue where the Picker property editor did not update items.
Updated internal dependencies
- Bumped
nextfrom 15.4.7 to 15.4.8 in examples.
Form Engine 7.8.0
7.8.0
December 1, 2025
New
- Added an
Uploadercomponent in a separate package.
Changed
- Improved tree shaking support for the RSuite component package.
- Removed the
requiredflag from theactionproperty of the RsUploader component. - Added guide for usage Designer and RSuite components in React 19.
Fixed bugs
- Disabled the “Add rules” button when no rules are available.
Form Engine 7.7.0
New
- Added new
EmbeddedFormcomponent that allows embedding forms using theformNameproperty instead of embedding the form name in the component type. - Introduced
useBuilderThemehook for accessing the current BuilderStore theme from the core package and custom components.
Changed
- Templates are now rendered through the
EmbeddedFormcomponent for better compatibility and flexibility. - Added support for building the core package without localization dependencies to reduce bundle size.
- Updated NumberFormat component types for better React 19 compatibility.
Fixed bugs
- Fixed FastQr component error:
TypeError: Cannot read properties of undefined (reading 'length').
Updated internal dependencies
- Bumped
js-yamlfrom 4.1.0 to 4.1.1 in examples. - Bumped
globfrom 10.4.5 to 10.5.0 in examples.