Reusable components written in AngularJS