O jQuery com todos os seus plug-ins é ótimo, mas no meu último projeto descobri que muitos dos plug-ins não suportam AMD, que foi o que usamos naquele projeto.
Isso me forçou a alterar todos os scripts e torna mais difícil atualizar o código posteriormente.
Portanto, minha sugestão para escrever um plugin jQuery é fazer isso:
(function (factory) {
if (typeof define === 'function' && define.amd) {
define(['jquery'], factory);
} else {
factory(jQuery);
}
}(function ($) {
$.fn.jqueryPlugin = function () {};
}));
Desta forma, o plugin funciona da maneira “normal” e para sistemas AMD.