--- layout: "docs_api" version: "<$ version.current.name $>" versionHref: "<$ version.current.href $>" path: "" title: Javascript header_sub_title: Extend Ionic even further with the power of AngularJS searchable: false --- # AngularJS Extensions Ionic is both a CSS framework and a Javascript UI library. Many components need Javascript in order to produce magic, though often components can easily be used without coding through framework extensions such as our AngularIonic extensions. Ionic follows the View Controller pattern popularized in such frameworks as Cocoa Touch. In the View Controller pattern, we treat different sections of the interface as child Views or even child View Controllers that contain other views. View Controllers then "power" the Views inside of them to provide interaction and UI functionality. A great example is the Tab Bar View Controller which processes taps on a Tab Bar to switch between a set of viewable panes. Explore our API docs for detailed information on the View Controllers and Javascript utilities available in Ionic.