javascript ioc library