starting point for angular refactor