Migrate to AngularJS