HTML is great for declaring static documents, but it falters when we try to use it for declaring dynamic views in web-applications. AngularJS lets you extend HTML vocabulary for your application. The resulting environment is extraordinarily expressive, readable, and quick to develop. It supports model view controller framework. It binds data in an automatic way which updates the view whenever the model changes. Controllers are the behavior behind the DOM elements.