{"id":14986881,"url":"https://github.com/dynamic-forms/dynamic-forms","last_synced_at":"2025-08-04T04:39:46.411Z","repository":{"id":36969760,"uuid":"264406641","full_name":"dynamic-forms/dynamic-forms","owner":"dynamic-forms","description":"Angular project for dynamic forms based on JSON ","archived":false,"fork":false,"pushed_at":"2025-07-18T00:38:09.000Z","size":17337,"stargazers_count":24,"open_issues_count":3,"forks_count":7,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-07-19T04:54:09.705Z","etag":null,"topics":["angular","angular-cli","angular-material","angular-reactive-forms","bootstrap","dynamic-forms","json","json-forms","reactive-forms"],"latest_commit_sha":null,"homepage":"https://dynamic-forms.azurewebsites.net/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dynamic-forms.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-05-16T09:53:08.000Z","updated_at":"2025-06-21T11:17:53.000Z","dependencies_parsed_at":"2022-06-28T23:34:11.433Z","dependency_job_id":"9bf1d3d7-f2ab-4792-9c47-f29eaf157e5c","html_url":"https://github.com/dynamic-forms/dynamic-forms","commit_stats":{"total_commits":1367,"total_committers":5,"mean_commits":273.4,"dds":"0.41185076810534016","last_synced_commit":"c548baac434689c3f437d5473d8ab4929095635c"},"previous_names":[],"tags_count":104,"template":false,"template_full_name":null,"purl":"pkg:github/dynamic-forms/dynamic-forms","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dynamic-forms%2Fdynamic-forms","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dynamic-forms%2Fdynamic-forms/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dynamic-forms%2Fdynamic-forms/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dynamic-forms%2Fdynamic-forms/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dynamic-forms","download_url":"https://codeload.github.com/dynamic-forms/dynamic-forms/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dynamic-forms%2Fdynamic-forms/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268649876,"owners_count":24284197,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-04T02:00:09.867Z","response_time":79,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["angular","angular-cli","angular-material","angular-reactive-forms","bootstrap","dynamic-forms","json","json-forms","reactive-forms"],"created_at":"2024-09-24T14:13:44.452Z","updated_at":"2025-08-04T04:39:46.375Z","avatar_url":"https://github.com/dynamic-forms.png","language":"TypeScript","readme":"# **dynamic-forms**\n\nThis is an [**Angular**](https://angular.dev) project for dynamic forms based on JSON:\n\n- [**GitHub**](https://github.com/dynamic-forms/dynamic-forms) repository under [MIT License](https://github.com/dynamic-forms/dynamic-forms/blob/main/LICENSE.md) with [releases](https://github.com/dynamic-forms/dynamic-forms/releases)\n- [**Azure DevOps**](https://dev.azure.com/alexandergebuhr/dynamic-forms) project with [build pipelines](https://dev.azure.com/alexandergebuhr/dynamic-forms/_build) and [release dashboard](https://dev.azure.com/alexandergebuhr/dynamic-forms/_dashboards/dashboard/75c3b542-d483-4a2c-b7e0-b822a0d4a493)\n- [**Azure**](https://dynamic-forms.azurewebsites.net/) web apps with demos\n- [**npm packages**](https://www.npmjs.com/org/dynamic-forms) for libraries\n- [**stackblitz**](https://stackblitz.com/~/github.com/dynamic-forms/dynamic-forms) for project and [**stackblitz**](https://stackblitz.com/edit/dynamic-forms-stackblitz) with example using npm packages of libraries\n\n## **Features**\n\n- Dynamic [**reactive forms**](https://angular.dev/guide/forms/reactive-forms) based on **JSON** definition\n- Structuring / nesting dynamic forms by\n  - Dynamic form elements (container, accordion, tabs, text, content, markdown, modal)\n  - Dynamic form fields (control, group, array, dictionary)\n  - Dynamic form actions (button, icon)\n- Dynamic form controls / inputs include\n  - Dynamic form inputs\n    - Checkbox and switch\n    - Combobox, radio, select and toggle\n    - Textbox, textarea and input mask\n    - Datepicker\n    - Numberbox\n    - File(s)\n  - Dynamic form input validation\n  - Dynamic form input hints\n  - Dynamic form input add-ons\n\n## **Libraries**\n\n### **@dynamic-forms/core** [![npm version](https://badge.fury.io/js/@dynamic-forms%2Fcore.svg)](https://badge.fury.io/js/@dynamic-forms%2Fcore)\n\n- Library includes **extendable** interfaces, classes, components, factories, services and **modules**\n  - Dynamic form config module for registration of components\n  - Dynamic form module includes\n    - Builder to create form controls, groups, arrays and dictionaries\n    - Component factory to resolve registered components\n    - Component to render elements, fields and actions\n  - Dynamic form control module includes\n    - Component to render an input\n  - Dynamic form group module includes\n    - Component to render controls, groups and arrays\n  - Dynamic form array module includes\n    - Component to render either controls, groups or arrays of same structure\n  - Dynamic form dictionary module includes\n    - Component to render either controls, groups or arrays of same structure\n  - Dynamic form validation module for registration of validators and messages\n    - Builder to create validators\n    - Service to resolve validation messages\n  - Dynamic form action module for registration of action handlers\n    - Service to resolve action handlers\n\n### **@dynamic-forms/bootstrap** [![npm version](https://badge.fury.io/js/@dynamic-forms%2Fbootstrap.svg)](https://badge.fury.io/js/@dynamic-forms%2Fbootstrap)\n\n- Library for components based on [**bootstrap**](https://getbootstrap.com/) and **HTML5**\n\n### **@dynamic-forms/material** [![npm version](https://badge.fury.io/js/@dynamic-forms%2Fmaterial.svg)](https://badge.fury.io/js/@dynamic-forms%2Fmaterial)\n\n- Library for components based on [**@angular/material**](https://material.angular.io/)\n\n### **@dynamic-forms/markdown** [![npm version](https://badge.fury.io/js/@dynamic-forms%2Fmarkdown.svg)](https://badge.fury.io/js/@dynamic-forms%2Fmarkdown)\n\n- Extension library for markdown based on [**marked**](https://github.com/markedjs/marked)\n\n## **Packages**\n\n### **Version 20** [![Build Status](https://dev.azure.com/alexandergebuhr/dynamic-forms/_apis/build/status/dynamic-forms-publish?branchName=refs/tags/20.0.0-next.0)](https://dev.azure.com/alexandergebuhr/dynamic-forms/_build/latest?definitionId=45\u0026branchName=refs/tags/20.0.0-next.0)\n\n- `npm install @dynamic-forms/core@20.0.0-next.0`\n- `npm install @dynamic-forms/bootstrap@20.0.0-next.0`\n- `npm install @dynamic-forms/material@20.0.0-next.0`\n- `npm install @dynamic-forms/markdown@20.0.0-next.0`\n\n### **Version 19** [![Build Status](https://dev.azure.com/alexandergebuhr/dynamic-forms/_apis/build/status/dynamic-forms-publish?branchName=refs/tags/19.1.0)](https://dev.azure.com/alexandergebuhr/dynamic-forms/_build/latest?definitionId=45\u0026branchName=refs/tags/19.1.0)\n\n- `npm install @dynamic-forms/core@19.1.0`\n- `npm install @dynamic-forms/bootstrap@19.1.0`\n- `npm install @dynamic-forms/material@19.1.0`\n- `npm install @dynamic-forms/markdown@19.1.0`\n\n### **Version 18** [![Build Status](https://dev.azure.com/alexandergebuhr/dynamic-forms/_apis/build/status/dynamic-forms-publish?branchName=refs/tags/18.1.2)](https://dev.azure.com/alexandergebuhr/dynamic-forms/_build/latest?definitionId=45\u0026branchName=refs/tags/18.1.2)\n\n- `npm install @dynamic-forms/core@18.1.2`\n- `npm install @dynamic-forms/bootstrap@18.1.2`\n- `npm install @dynamic-forms/material@18.1.2`\n- `npm install @dynamic-forms/markdown@18.1.2`\n\n### **Version 17** [![Build Status](https://dev.azure.com/alexandergebuhr/dynamic-forms/_apis/build/status/dynamic-forms-publish?branchName=refs/tags/17.0.0)](https://dev.azure.com/alexandergebuhr/dynamic-forms/_build/latest?definitionId=45\u0026branchName=refs/tags/17.0.0)\n\n- `npm install @dynamic-forms/core@17.0.0`\n- `npm install @dynamic-forms/bootstrap@17.0.0`\n- `npm install @dynamic-forms/material@17.0.0`\n- `npm install @dynamic-forms/markdown@17.0.0`\n\n## **Demos**\n\n### **Version 20** [![Build Status](https://dev.azure.com/alexandergebuhr/dynamic-forms/_apis/build/status/dynamic-forms-cd?branchName=20.0.x)](https://dev.azure.com/alexandergebuhr/dynamic-forms/_build/latest?definitionId=43\u0026branchName=20.0.x)\n\n- Built with [Angular 20](https://next.angular.dev/)\n- Environments include [DEV](https://dynamic-forms.azurewebsites.net/v20/dev/) and [PROD](https://dynamic-forms.azurewebsites.net/v20/)\n\n### **Version 19** [![Build Status](https://dev.azure.com/alexandergebuhr/dynamic-forms/_apis/build/status/dynamic-forms-cd?branchName=19.1.x)](https://dev.azure.com/alexandergebuhr/dynamic-forms/_build/latest?definitionId=43\u0026branchName=19.1.x)\n\n- Built with [Angular 19](https://v19.angular.dev/)\n- Environments include [DEV](https://dynamic-forms.azurewebsites.net/v19/dev/) and [PROD](https://dynamic-forms.azurewebsites.net/v19/)\n\n### **Version 18** [![Build Status](https://dev.azure.com/alexandergebuhr/dynamic-forms/_apis/build/status/dynamic-forms-cd?branchName=18.1.x)](https://dev.azure.com/alexandergebuhr/dynamic-forms/_build/latest?definitionId=43\u0026branchName=18.1.x)\n\n- Built with [Angular 18](https://v18.angular.dev/)\n- Environments include [DEV](https://dynamic-forms.azurewebsites.net/v18/dev/) and [PROD](https://dynamic-forms.azurewebsites.net/v18/)\n\n### **Version 17** [![Build Status](https://dev.azure.com/alexandergebuhr/dynamic-forms/_apis/build/status/dynamic-forms-cd?branchName=17.0.x)](https://dev.azure.com/alexandergebuhr/dynamic-forms/_build/latest?definitionId=43\u0026branchName=17.0.x)\n\n- Built with [Angular 17](https://v17.angular.io/)\n- Environments include [DEV](https://dynamic-forms.azurewebsites.net/v17/dev/) and [PROD](https://dynamic-forms.azurewebsites.net/v17/)\n","funding_links":[],"categories":["Third Party Components"],"sub_categories":["JSON Forms"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdynamic-forms%2Fdynamic-forms","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdynamic-forms%2Fdynamic-forms","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdynamic-forms%2Fdynamic-forms/lists"}