Skip to content

Overview

Juan Stoppa edited this page Apr 11, 2019 · 22 revisions

Overview

FormQL is a framework for building dynamic forms in Angular. The name comes from the paradigm behind GraphQL, cherry pick the data that your form needs by defining the binding property or schema of each field in the form.

The idea behind the framework is to make it easier for users to create forms by using the FormQL Editor without having to write a line of code but still allow developers to extend it when the required functionality goes beyond the components available in the framework.

Architecture

FormQL architecture

  • Layout: This is a component that defines the main structure of the form, tag is implemented here. A layout can contain one or more pages. See Layouts for more info or Creating custom layouts if you need to create a bespoke layout.
  • Page: The page is a FormGroup object that contains the list sections in the form. In a multi-page form, there can be more than one page. See Pages for more info.
  • Section: Defines a specific section or card in the form. A section is a FormGroup object that can contain one or more components. See Sections for more info.
  • Components: These are components that comes with the framework, they represent the main functionality of a form: textbox, datepicker, textarea, radio button, checkbox, label and buttons. FormQL comes with a set of Bundles for each design system such as Material Design and Bootstrap. See Components for more info or Creating custom components if you need to create a bespoke one.
  • Validators: These are Angular validators that are implemented using FormQL Rules. See Rules for more details