Mobile App - Bibliotecas Javascript

Utilizar bibliotecas e frameworks javascript no desenvolvimento front-end já é uma prática comum há algum tempo. Quando comecei a me interessar pelo assunto a Prototypejs era bastante popular e já gerava filhos. Logo depois ouvi falar em jQuery, MooTools, YUI

E quando começamos a falar em mobile app, quais as possibilidades?

Zepto

A Zepto é uma biblioteca destinada unicamente a browsers modernos (talvez muito daquilo que jQuery quer se tornar na versão 2.0). Sua principal vantagem está em justamente ter alta compatibilidade com jQuery e se manter em menos de 10k.

O interessante de se trabalhar com Zepto é que o código é bastante acessível e bem escrito, uma consulta rápida aos fontes já tira qualquer dúvida.

Outro ponto forte são os eventos simples para mobile. A bilioteca já mapeia taps e swipes. Tudo isto aliado a uma boa documentação.

Confesso que fiquei bastante empolgado com a bilioteca e o resultado foram dois plugins.

A aplicação que estou fazendo tem uma seção com um carrossel que destaca um único item. Meus requisitos eram conseguir fazer com que isto funcionasse com um código enxuto e dando suporte a touch.

O mais próximo que encontrei foi o carousel do Mobify.js, que recomendo . Mas resolvi colocar mãos a massa e o resultado foi o Zepto Carousel.

O mais bacana foi que em meio ao desenvolvimento, publiquei no Github e um dos forks acertou um detalhe que eu havia deixado passar despercebido.

Range

Seguindo a mesma lógica do Carousel, nasceu o Zepto Range. O plugin recebe um campo input do tipo range e implementa uma interface mais agradável e mobile friendly.

jQuery Mobile

Para aqueles que não querem abrir mão de jQuery e precisam de um framework mais completo para trabalhar com mobile, uma alternativa é usar jQuery Mobile.


Estas foram as bibliotecas que avaliei com mais atenção. Mas dei uma conferida rápida também em xui, jQTouch e Sencha. No fim acabei usando a Zepto e não tive decepções.

E você, já usou alguma biblioteca com suporte a mobile? Deixe um comentário!