Gestión de dependencias y herramienta de construcción para JavaScript.

Tengo muchos jsfragmentos y Archivos compartidos en múltiples proyectos. Tengo que copiarlos en un solo archivo para cada proyecto o servirlos como archivos individuales en cdn. Ambas son malas ideas.

¿Existe alguna herramienta de construcción y gestión de dependencias como Maven para JavaScript? Lo ideal sería tomar un conjunto de dependencias js y crear un solo archivo js que se pueda servir en cdn.

Puedo escribir un guión para hacer eso. Pero estoy buscando para encontrar si existe algo comparable a Maven para JS.

Actualización 2014: basado en las respuestas aquí y en mi investigación, las siguientes son las herramientas más populares:

Bower, NPM, RequireJS, Browserify, Webpack, Grunt, Gulp

Respuestas a la pregunta(3)

Su respuesta a la pregunta