TJ posted on his blog about interesting idea to bring all connected content about eg. Popup and store it within one folder (or component). From that folder to component is easy to create some kind of package, package manager like npm (or I think that we can just use npm for this).
More about idea: http://tjholowaychuk.com/post/27984551477/components
There are things that we must think before we create universal component (that can be used with jQuery, MooTools, YUI...). Make them extensible enough to use in big projects.
TJ mentioned that at LearnBoost they use similar idea with server and client code in one component, this is really interesting but if such modules would be in npm registry then they would have dependencies like Express or jQuery, or some kind of MVC library.
Another fragmentation issue is AMD vs Common.JS. I also think that Common.JS are more elegant but still now we have them both in community. I think about it with some kind of MVC and not only for browser but also for server. I can think of two libraries that want to integrate it: Derby and Meteor.
I think that we must think about not only client-side components but all of them, client-side(ender), server-side(npm), and mixed. Components alone need some kind of glue code to make them usable, maybe if there will be some kind of spec for them existing libraries will just start supporting them?
http://blog.izs.me/post/27987129912/tj-holowaychuk-components - response
https://github.com/component/spec/wiki - wiki about TJ components
Feedback or Comments?
Want to learn more?
Sign up to get a digest of my articles and interesting links via email every month.