initial angular implementation