Well, component.io (http://component.io) is such a system. You have a choice of routers (page.js is a very express-like option that works well), and you can pick and choose what other components to build into your application.
Components are self-contained packages of html/css/js based on CommonJS modules and compiled using node.
I use grunt-component-build along with grunt-contrib-watch to rebuild the css/js files on each change.
I've been using W3C standards (DOM) as much as possible to keep third-party dependencies at a minimum, with shimming where required for cross browser support.
An effects library that doesn't require jQuery would be a good addition to that environment. (Nothing against jQuery, but I want to leave out a selector engine on platforms that don't need it and just use the support in the browser.)
Components are self-contained packages of html/css/js based on CommonJS modules and compiled using node.
I use grunt-component-build along with grunt-contrib-watch to rebuild the css/js files on each change.
I've been using W3C standards (DOM) as much as possible to keep third-party dependencies at a minimum, with shimming where required for cross browser support.
An effects library that doesn't require jQuery would be a good addition to that environment. (Nothing against jQuery, but I want to leave out a selector engine on platforms that don't need it and just use the support in the browser.)