architecture client angularjs