AngularJS is an open-source JavaScript framework, maintained by Google, that assists with running single-page applications. Its goal is to augment web-based applications with model–view–controller (MVC) capability, in an effort to make both development and testing easier.The AngularJS library works by first reading the HTML page, which has embedded into it additional custom tag attributes. Angular interprets those attributes as directives to bind input or output parts of the page to a model that is represented by standard JavaScript variables. The values of those JavaScript variables can be manually set within the code, or retrieved from static or dynamic JSON resources.

AngularJS is built on the belief that declarative programming should be used to create user interfaces and connect software components, while imperative programming is better suited to defining an application's business logic. The framework adapts and extends traditional HTML to present dynamic content through two-way data-binding that allows for the automatic synchronization of models and views. As a result, AngularJS de-emphasizes explicit DOM manipulation with the goal of improving testability and performance.


AngularJS's design goals include:

  • to decouple DOM manipulation from application logic. The difficulty of this is dramatically affected by the way the code is structured./li>
  • to decouple the client side of an application from the server side. This allows development work to progress in parallel, and allows for reuse of both sides.
  • to provide structure for the journey of building an application: from designing the UI, through writing the business logic, to testing.

Angular implements the MVC pattern to separate presentation, data, and logic components. Using dependency injection, Angular brings traditionally server-side services, such as view-dependent controllers, to client-side web applications. Consequently, much of the burden on the server can be reduced.


Believe Creative has used AngularJS to create a totally new frontend for an exisiting product developed using Ushahidi which is an open source web application for information collection, visualization and interactive mapping.

We have also built a front end for Macmillan, unfortunately it cannot be showcased .


Screenshots of the work done so far

AngularJS: Mappingmediafreedom - Home page
AngularJS: Mappingmediafreedom - Finding reports based on location
AngularJS: Mappingmediafreedom - Report results
AngularJS: Mappingmediafreedom - Report detailed information
AngularJS: Mappingmediafreedom - Report detailed information
AngularJS: Mappingmediafreedom - Report video information
AngularJS: Mappingmediafreedom - Report submission using form
AngularJS: Mappingmediafreedom - Types of categories