🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

@ng-forge/dynamic-forms-material

Package Overview
Dependencies
Maintainers
1
Versions
51
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@ng-forge/dynamic-forms-material

Angular Material integration for @ng-forge/dynamic-forms. Pre-built Material Design form components.

latest
Source
npmnpm
Version
1.1.0
Version published
Weekly downloads
79
61.22%
Maintainers
1
Weekly downloads
 
Created
Source

ng-forge Dynamic Forms

@ng-forge/dynamic-forms-material

Material Design field components for @ng-forge/dynamic-forms.

CI npm version npm downloads Angular License: MIT Discord

Stability: This library is built on Angular Signal Forms, which is stable as of Angular v22. Check the compatibility matrix below for supported Angular versions.

Compatibility

Angular@ng-forge/dynamic-forms-material
22.x1.x
21.x0.x (experimental)

Versioned in lockstep with @ng-forge/dynamic-forms. The 0.x line targets Angular 21 (experimental Signal Forms). Each release pins its Angular requirement via peerDependencies; npm warns on a mismatch.

Installation

npm install @ng-forge/dynamic-forms @ng-forge/dynamic-forms-material @angular/material

Setup

// app.config.ts
import { provideDynamicForm } from '@ng-forge/dynamic-forms';
import { withMaterialFields } from '@ng-forge/dynamic-forms-material';

export const appConfig: ApplicationConfig = {
  providers: [provideDynamicForm(...withMaterialFields())],
};

Usage

import { DynamicForm, type FormConfig, type InferFormValue } from '@ng-forge/dynamic-forms';

@Component({
  imports: [DynamicForm],
  template: `<form [dynamic-form]="config" (submitted)="onSubmit($event)"></form>`,
})
export class ContactFormComponent {
  config = {
    fields: [
      { key: 'name', type: 'input', value: '', label: 'Name', required: true, props: { appearance: 'outline' } },
      {
        key: 'email',
        type: 'input',
        value: '',
        label: 'Email',
        required: true,
        email: true,
        props: { appearance: 'outline', prefixIcon: 'email' },
      },
      { type: 'submit', key: 'submit', label: 'Send', props: { color: 'primary' } },
    ],
  } as const satisfies FormConfig;

  onSubmit(value: InferFormValue<typeof this.config.fields>) {
    console.log('Form submitted:', value);
  }
}

Global Configuration

provideDynamicForm(
  ...withMaterialFields({
    appearance: 'outline',
    subscriptSizing: 'dynamic',
  }),
);

Field Types

Input, Textarea, Select, Checkbox, Radio, Datepicker, Slider, Toggle, Multi-Checkbox, Button, Submit, Next, Previous

Documentation

Changelog

See GitHub Releases.

Contributing

Contributions are welcome! Please read our Contributing Guide.

License

MIT © ng-forge

Keywords

angular

FAQs

Package last updated on 22 Jul 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts