JSON powered forms for Angular
705
stars
1,061
commits
TypeScript
primary language
Aug 11, 2026
updated
This library serves as a Dynamic JSON Powered Form rendering library for Angular. This works by
providing a JSON schema to a <formio> Angular component, where that form is dynamically rendered within the front
end application. This allows forms to be dynamically built using JSON schemas.
For the latest documentation, release information, and guides, always refer to the official Form.io Help Documentation available here:
This library supports many different Angular Versions. To use this library with the correct version of Angular, please refer to the Compatibility matrix here: https://help.form.io/dev/javascript-development/frameworks#angular-versions
npm install --save @formio/angular
yarn add --save @formio/angular
npm install --save @formio/angular@a18
yarn add --save @formio/angular@a18
To run a demo of the Form.io Angular renderer, please follow these steps.
npm installng serveThis will startup an example application where you can see all the features provided by this module.
Here is the hosted demo application https://formio.github.io/angular-demo/
You can easily render a form within your Angular application by referencing the URL of that form as follows.
<formio src="https://examples.form.io/example"></formio>
You can also pass the JSON form directly to the renderer as follows.
<formio
[form]='{
"title": "My Test Form",
"components": [
{
"type": "textfield",
"input": true,
"tableView": true,
"inputType": "text",
"inputMask": "",
"label": "First Name",
"key": "firstName",
"placeholder": "Enter your first name",
"prefix": "",
"suffix": "",
"multiple": false,
"defaultValue": "",
"protected": false,
"unique": false,
"persistent": true,
"validate": {
"required": true,
"minLength": 2,
"maxLength": 10,
"pattern": "",
"custom": "",
"customPrivate": false
},
"conditional": {
"show": "",
"when": null,
"eq": ""
}
},
{
"type": "textfield",
"input": true,
"tableView": true,
"inputType": "text",
"inputMask": "",
"label": "Last Name",
"key": "lastName",
"placeholder": "Enter your last name",
"prefix": "",
"suffix": "",
"multiple": false,
"defaultValue": "",
"protected": false,
"unique": false,
"persistent": true,
"validate": {
"required": true,
"minLength": 2,
"maxLength": 10,
"pattern": "",
"custom": "",
"customPrivate": false
},
"conditional": {
"show": "",
"when": null,
"eq": ""
}
},
{
"input": true,
"label": "Submit",
"tableView": false,
"key": "submit",
"size": "md",
"leftIcon": "",
"rightIcon": "",
"block": false,
"action": "submit",
"disableOnInvalid": true,
"theme": "primary",
"type": "button"
}
]
}'
></formio>
This is a very simple example. This library is capable of building very complex forms which include e-signatures, columns, panels, field conditionals, validation requirements, and the list goes on and on.
To use this library within your project, you will first need to install it as a dependency.
npm install --save @formio/angular@rc @formio/js
You can now include the module in your Angular application like so.
import { FormioModule } from '@formio/angular';
@NgModule({
imports: [BrowserModule, CommonModule, FormioModule],
declarations: [AppComponent],
bootstrap: [AppComponent],
})
export class AppModule {}
By default, this library will use Bootstrap 5 as the template and rendering CSS framework. This, however, can be changed by adding different templates into your application and using them like the following.
npm install --save @formio/bootstrap@rc
Then perform the following in your application.
import { Formio } from '@formio/angular';
import bootstrap4 from '@formio/bootstrap/bootstrap4';
(Formio as any).use(bootstrap4);
This library is a combination of multiple libraries that enable rapid Serverless application development using Form.io. These libraries are as follows.
Click on each of those links to read more about how they work and how to utilize them to their fullest potential.
If you would like to run a demonstration of all the features of this module, then you can check out the Angular Demo Application, which is the code behind the following hosted application @ https://formio.github.io/angular-demo
For help in getting started using this library, we created the angular-app-starterkit repository to help you get started with best practices with using Form.io within an Angular application. You can try this applicatoin by downloading that application and then doing the following.
npm install
npm start
To read up on the full documentation of this library, please check out the Wiki Page
Form.io is a combined form and data management API platform created for developers who are building "Serverless" form-based applications. Form.io provides an easy drag-and-drop form builder workflow allowing you to build complex forms for enterprise applications quickly and easily. These forms are then embedded directly into your application with a single line of code that dynamically renders the form (using Angular or React) in your app while at the very same time generating the RESTful API to support those forms. The Form.io platform also offers numerous 3rd-party services that are fully integrated into the form building process allowing you to extend the power and capability of your apps while saving time and effort.
You can use this renderer with Form.io by simply pointing the src parameter to the URL of the form. For example, the following URL points to the JSON schema of a form built on Form.io.
https://pjmfogrfqptslvi.form.io/test
To render this form, you simply provide that URL to the <formio> directive like so.
<formio src="https://pjmfogrfqptslvi.form.io/test"></formio>
Not only will this render the form, but it will also submit that form to the provided API endpoint.
(top 30 of 46)
TypeScript
85.6%
HTML
12.4%
JavaScript
1.0%
JSON powered forms for Angular
705
stars
1,061
commits
TypeScript
primary language
Aug 11, 2026
updated
This library serves as a Dynamic JSON Powered Form rendering library for Angular. This works by
providing a JSON schema to a <formio> Angular component, where that form is dynamically rendered within the front
end application. This allows forms to be dynamically built using JSON schemas.
For the latest documentation, release information, and guides, always refer to the official Form.io Help Documentation available here:
This library supports many different Angular Versions. To use this library with the correct version of Angular, please refer to the Compatibility matrix here: https://help.form.io/dev/javascript-development/frameworks#angular-versions
npm install --save @formio/angular
yarn add --save @formio/angular
npm install --save @formio/angular@a18
yarn add --save @formio/angular@a18
To run a demo of the Form.io Angular renderer, please follow these steps.
npm installng serveThis will startup an example application where you can see all the features provided by this module.
Here is the hosted demo application https://formio.github.io/angular-demo/
You can easily render a form within your Angular application by referencing the URL of that form as follows.
<formio src="https://examples.form.io/example"></formio>
You can also pass the JSON form directly to the renderer as follows.
<formio
[form]='{
"title": "My Test Form",
"components": [
{
"type": "textfield",
"input": true,
"tableView": true,
"inputType": "text",
"inputMask": "",
"label": "First Name",
"key": "firstName",
"placeholder": "Enter your first name",
"prefix": "",
"suffix": "",
"multiple": false,
"defaultValue": "",
"protected": false,
"unique": false,
"persistent": true,
"validate": {
"required": true,
"minLength": 2,
"maxLength": 10,
"pattern": "",
"custom": "",
"customPrivate": false
},
"conditional": {
"show": "",
"when": null,
"eq": ""
}
},
{
"type": "textfield",
"input": true,
"tableView": true,
"inputType": "text",
"inputMask": "",
"label": "Last Name",
"key": "lastName",
"placeholder": "Enter your last name",
"prefix": "",
"suffix": "",
"multiple": false,
"defaultValue": "",
"protected": false,
"unique": false,
"persistent": true,
"validate": {
"required": true,
"minLength": 2,
"maxLength": 10,
"pattern": "",
"custom": "",
"customPrivate": false
},
"conditional": {
"show": "",
"when": null,
"eq": ""
}
},
{
"input": true,
"label": "Submit",
"tableView": false,
"key": "submit",
"size": "md",
"leftIcon": "",
"rightIcon": "",
"block": false,
"action": "submit",
"disableOnInvalid": true,
"theme": "primary",
"type": "button"
}
]
}'
></formio>
This is a very simple example. This library is capable of building very complex forms which include e-signatures, columns, panels, field conditionals, validation requirements, and the list goes on and on.
To use this library within your project, you will first need to install it as a dependency.
npm install --save @formio/angular@rc @formio/js
You can now include the module in your Angular application like so.
import { FormioModule } from '@formio/angular';
@NgModule({
imports: [BrowserModule, CommonModule, FormioModule],
declarations: [AppComponent],
bootstrap: [AppComponent],
})
export class AppModule {}
By default, this library will use Bootstrap 5 as the template and rendering CSS framework. This, however, can be changed by adding different templates into your application and using them like the following.
npm install --save @formio/bootstrap@rc
Then perform the following in your application.
import { Formio } from '@formio/angular';
import bootstrap4 from '@formio/bootstrap/bootstrap4';
(Formio as any).use(bootstrap4);
This library is a combination of multiple libraries that enable rapid Serverless application development using Form.io. These libraries are as follows.
Click on each of those links to read more about how they work and how to utilize them to their fullest potential.
If you would like to run a demonstration of all the features of this module, then you can check out the Angular Demo Application, which is the code behind the following hosted application @ https://formio.github.io/angular-demo
For help in getting started using this library, we created the angular-app-starterkit repository to help you get started with best practices with using Form.io within an Angular application. You can try this applicatoin by downloading that application and then doing the following.
npm install
npm start
To read up on the full documentation of this library, please check out the Wiki Page
Form.io is a combined form and data management API platform created for developers who are building "Serverless" form-based applications. Form.io provides an easy drag-and-drop form builder workflow allowing you to build complex forms for enterprise applications quickly and easily. These forms are then embedded directly into your application with a single line of code that dynamically renders the form (using Angular or React) in your app while at the very same time generating the RESTful API to support those forms. The Form.io platform also offers numerous 3rd-party services that are fully integrated into the form building process allowing you to extend the power and capability of your apps while saving time and effort.
You can use this renderer with Form.io by simply pointing the src parameter to the URL of the form. For example, the following URL points to the JSON schema of a form built on Form.io.
https://pjmfogrfqptslvi.form.io/test
To render this form, you simply provide that URL to the <formio> directive like so.
<formio src="https://pjmfogrfqptslvi.form.io/test"></formio>
Not only will this render the form, but it will also submit that form to the provided API endpoint.
(top 30 of 46)
TypeScript
85.6%
HTML
12.4%
JavaScript
1.0%