.. _dev-ui: User Interface ************** Basics ====== Ajenti frontend is a AngularJS-based single-page rich web application. Your plugins can extend it by adding new Angular components (services, controllers, directives) and routes (``ngRoute``). Client-server communication is facilitated by AJAX requests to backend API (``$http``) and a Socket.IO connection (``socket`` and ``push`` Angular services). Client styling is based on a customized Twitter Bootstrap build. Example ======= Basic UI example can be browsed and downloaded at https://github.com/ajenti/demo-plugins/tree/master/demo_2_ui The basic UI plugin includes: * an AngularJS `module `_ containing a `route `_ and a `controller `_: * an AngularJS `view template `_ (HTML)