A utility library for breaking down complex Angular forms into reusable, type-safe subcomponents.
NgxSubForm is a utility library for Angular that simplifies the creation and management of complex forms. It allows developers to break down large forms into smaller, reusable subcomponents while maintaining full type safety. The library eliminates boilerplate code associated with `ControlValueAccessor` and provides a clean API for handling form decomposition and data transformation.
Angular developers building applications with complex or large-scale forms that require maintainability, reusability, and type safety. It is particularly useful for teams dealing with forms that have nested structures or need to be split across multiple components.
Developers choose NgxSubForm because it drastically reduces the boilerplate and complexity of managing Angular forms, especially when decomposing them into subcomponents. Its type-safe API ensures fewer runtime errors, and its focus on isolation and reusability makes maintaining large forms more manageable.
Utility library for breaking down an Angular form into multiple components
The `createForm` function eliminates manual `ControlValueAccessor` implementations, reducing boilerplate as demonstrated in the basic usage examples where no inheritance or Angular module setup is needed.
Adds full TypeScript support to Angular forms, catching errors at build time through typed `formControls` and `formControlNames`, which improves robustness and developer experience.
Enables breaking down complex forms into reusable subcomponents via root and sub forms, making large form structures more manageable and maintainable, as outlined in the principles section.
Provides `toFormGroup` and `fromFormGroup` functions for data transformation, useful for handling polymorphic data or converting between internal and external representations, as explained in the remap section.
Requires manual setup of `Subject` streams for `input$` and `disabled$`, adding verbosity and complexity compared to standard Angular form bindings, even with the simplified API.
The README includes a migration guide and a version table tightly coupled to Angular updates, indicating frequent breaking changes and maintenance overhead for users.
Focuses solely on form logic without providing pre-styled components, necessitating additional work for visual design and integration with UI libraries like Angular Material.
🤖 Headless, performant, and type-safe form state management for TS/JS, React, Vue, Angular, Solid, and Lit.
Collection of libraries to create an input mask which ensures that user types value according to predefined format.
Angular Plugin to make masks on form fields and html elements.
Signal Forms is a library that brings the power of Angular Signals to form handling, enabling reactive and performant form management. It provides a modern alternative to traditional Angular reactive forms by leveraging signals for fine-grained reactivity and change detection. ## Key Features - **Signal-Powered Forms** — Forms are built with Angular Signals, offering reactive updates and improved performance. - **Reactive Form Management** — Automatically tracks form state changes and validation status using signals. - **Fine-Grained Reactivity** — Only updates components that depend on specific form values, reducing unnecessary re-renders. - **Type Safety** — Provides strong typing for form controls, values, and validation states. - **Integration with Angular** — Seamlessly works within Angular applications and existing form workflows. ## Philosophy Signal Forms embraces Angular's signal-based reactivity to create more efficient and maintainable forms, moving away from the older reactive forms API towards a modern, signal-driven approach.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.