What problem does it solve?
Angular developers often face boilerplate and complexity when building dynamic forms. This Skill provides a signals-based approach to forms, enabling fine-grained reactivity, built-in validators, and a clean metadata system without the verbose ReactiveForms boilerplate.
Core Features & Use Cases
- form() to wrap a WritableSignal model into a FieldTree, making the model the single source of truth.
- Built-in validators (required, email, minLength, maxLength, pattern) plus conditional and cross-field validation with validateTree() and logic via LogicFn.
- Support for nested forms (apply, applyEach) and arrays, enabling complex form schemas and dynamic item lists.
- Async/HTTP validation (validateAsync, validateHttp) and Zod/Standard schema integration, with metadata-driven UI hints and a declarative FormField-based template.
- Form submission with submit() and a framework for error mapping back to fields.
Quick Start
Create a simple login form by wrapping a signal model with form() and applying basic validators.