I just finished watching this video of Nicholas Zakas regarding scalable JavaScript Application Architecture (http://www.youtube.com/watch?v=vXjVFPosQHw)
I am working on a project which involves jQuery + (AngularJS or KnockoutJS). We can think of creating abstraction around jQuery such that I can replace jQuery with, say, Dojo according to my client's requirements. But how can we create abstractions around libraries like AngularJS or knockoutJS, so that my application is less prone to huge modifications when I choose or replace either of these libraries.
Thanks for reading.