Requirejs was good, and still is, but as more time spend coding in the backend, the node require becomes a habit, and will start to get tired with AMD everytime you create a new file.
Than came along browserify, a lot of developers have moved over to it. But browserify does not offer code spliting like reuqirejs does… as well as other little candies like css loader and so on.
I don’t want to load the whole app in just one big file, some one page application these days can go over 1mb for just the .js files. Webpack come to the rescue.