can be used in dev env, cannot be built by r.js yet