You are assigned to design and implement a web site for Online Ads Publishing as single page application (SPA) using HTML5 and AngularJS. The app manages users and their ads organized by towns and categories. Anonymous site visitors can view published ads. Users can register, login, view their ads, add, edit and delete ads and logout. Administrators approve ads before publishing and can manage the users, ads, categories and towns. You are given the server-side REST services to be called by your app with AJAX requests so you do not need to develop back-end.