# XO Form Component (a.k.a XO form) XO form is a Declarative Web Forms Engine written in pure ES6 JavaScript. ![Portal](https://xo-js.dev/assets/img/schema-form.png "Toggling to JSON schema") ## Features * Build complex (data-bound) Web Forms, Wizards, Surveys using *declarative* JSON/JS code. * No bulky dependencies. HTML5, CSS3, ECMAScript. That's it. They're powerful enough ;-) * Use it in any environment, Vue, React, Angular, or plain vanilla JavaScript. * Complete freedom for Frontend Devs: customize styling, validation, navigation, progress indication, etc. * Get typed JSON post data or sync to a data model * All HTML5 controls included, plus a large number of custom controls, including wrappers for the Ace Code Editor, the CkEditor WYSIWYG/HTML editor, Leaflet Openstreetmap control, etc. * Autocompletion (using standard HTML5 DataLists & more, fixed lists, or dynamic API searches) * Customizable built-in validation, navigation, progress indication types (or roll your own using the addins interface) * Create and include your own control libraries * Experiment with XO form using [XO form Studio](https://www.xo-js.dev/) * Auto-generate forms using [JSON Schema](https://json-schema.org/) & [OpenAPI](https://swagger.io/specification/) # See Also: - [Getting Started with XO form](./getting-started.md) - [Understanding XO form](./understanding-exoform.md) - [Debugging & Tracing in XO form](./debugging-exoform.md) - [XO form Databinding](./data-binding.md) - [JSON Schemas](./json-schema.md)