fully working with require, angular, etc...