Como criar um plugin jQuery com suporte Asynchronous Module Definition (AMD) - requirejs
Abaixo algumas bibliotecas que oferecem suporte à AMD:
Caso você esteja começando agora e nunca ouviu falar de AMD, por favor leia isso antes:
Para dar suporte a AMD, sua biblioteca apenas deve registrar um modulo sendo ela mesma. Veja um exemplo:
Para criar um plugin jQuery com suporte a AMD nos temos que fazer o mesmo, porém nos temos uma dependência óbvia, a própria jQuery. jQuery já tem suporte a AMD, ela se auto registra com o modulo chamado "jquery", então basta apenas nos colocarmos o modulo "jquery" sendo uma dependência do nosso plugin.
Caso você deseje que seu plugin funcione sem ou com AMD, você deve fazer uma verificação de suporte AMD, ou seja, é só fazer um "if"
Veja como fica a implementação levando em consideração o suporte AMD ou não:
Bom é isso, caso você deseja mais exemplos, algum tempo atrás eu criei um repositório onde eu implementei algumas estruturas básicas de plugins jQuery, inclusive publiquei no site oficial da fundação jQuery.
abaixo os links:
Repositório: https://github.com/victorvhpg/exemploPlugin
Site oficial jQuery: http://plugins.jquery.com/exemploPlugin/