When Require.Js loads a script tag, it first executes a module defined in the data-main attribute. If that module has a config() method, RequireJS fetches the required files over the network.
Every define() method defines a new module with the same name as its filename. Every require() method loads the required module over the network asynchronously.