# angular.widget

Work in Progress This page is currently being revised. It might be incomplete or contain inaccuracies.

An angular widget can be either a custom attribute that modifies an existing DOM elements or an entirely new DOM element.

During html compilation, widgets are processed after `markup`, but before `directives`.

Following is the list of built-in angular widgets:

- `ng:format` - Formats data for display to user and for storage.
- `ng:non-bindable` - Blocks angular from processing an HTML element.
- `ng:repeat` - Creates and manages a collection of cloned HTML elements.
- `ng:required` - Verifies presence of user input.
- `ng:validate` - Validates content of user input.
- `HTML input elements` - Standard HTML input elements data-bound by angular.
- `ng:view` - Works with $route to "include" partial templates
- `ng:switch` - Conditionally changes DOM structure
- `ng:include` - Includes an external HTML fragment

For more information about angular widgets, see Understanding Angular Widgets in the angular Developer Guide.