12 Bibliotecas úteis para auxiliar no desenvolvimento utilizando Flutter
Uma biblioteca é uma coleção de subprogramas utilizados no desenvolvimento de software.
Bibliotecas contém código e dados auxiliares, que provém serviços a programas independentes, o que permite o compartilhamento e a alteração de código e dados de forma modular (retirado do site Wikipedia).
Neste artigo iremos listar 12 bibliotecas em flutter, muito úteis e altamente mantidas pela comunidade, que em minha opinião todo desenvolvedor deveria conhecer. Existe uma enorme diversidade de bibliotecas, mas neste artigo mencionarei as que recomendo e que as utilizei em algum momento nos projetos com Flutter.
Antes de iniciarmos, deixo claro que as recomendações das bibliotecas deste artigo foram feitas com base em minha experiência de uso. E os exemplos apresentados são da utilização de cada um, quando aplicáveis.
Levaremos em conta também a relevância pelo score, votos da comunidade e se estão sendo frequentemente atualizadas, pra não incluir neste artigo bibliotecas descontinuadas pelo criador e pela comunidade.
Mencionarei o link da documentação em cada uma delas, e ao clicar em cada package os índices de popularidade, “saúde”, manutenção e a pontuação geral de cada biblioteca podem ser visto nesta área:
Os packages mencionados não estão organizados por ranking.
1. fl_chart
Como ainda não existe nada oficial pra trabalharmos com gráficos, existe uma biblioteca fantástica para desenhar gráficos no Flutter. Possui vários gráficos úteis, como por exemplo em barra, linha e em pizza.
A sua documentação e os exemplos dos gráficos disponibilizados pelo fl_chart pode ser encontrada clicando aqui.
2. url_launcher
Esse é um plugin que auxilia na abertura de uma determinada URL por meio de esquemas pré-definidos e realiza diversas funções a partir dela em uma aplicação mobile. Suporta iOS e Android.
Exemplos de esquemas comuns suportados:
A documentação completa pode ser consultada aqui.
3. dio
O dio é um poderoso cliente HTTP para Dart, que suporta interceptores, configuração global, FormData, cancelamento de solicitação, download de arquivo, tempo limite, entre outras funcionalidades.
Isso realmente é bastante útil pra realizarmos as requisições de forma simplificada. A sua utilização é muito simples:
Para consultar a documentação, clique aqui.
4. path_provider
Essa é uma biblioteca muito útil pra ser utilizada quando precisamos localizar algum arquivo dentro do sistema de arquivos do Android ou iOS.
Sua implementação é feita da seguinte maneira:
Para mais detalhes, clique aqui.
5. package_info
Essa biblioteca é utilizada quando necessitamos buscar informações de versão do aplicativo, funciona tanto em Android como em iOS.
A documentação, pode ser encontrada clicando aqui.
6. rxdart
O RxDart é uma biblioteca de programação funcional reativa para o Google Dart, baseada no ReactiveX. Para detalhes de como funciona a programação reativa, recomendo ler este artigo.
Consulte a documentação, clicando aqui.
7. cached_network_image
Essa é uma biblioteca do Flutter utilizada para mostrar imagens da Internet e mantê-las no cache. Também pode ser usado com widgets de espaço reservado e erro.
O CachedNetworkImage pode ser usado diretamente ou através do ImageProvider. Como no exemplo abaixo:
Consulte a documentação, clicando aqui.
8. local_auth
Este plugin nos auxilia para implementar a autenticação biométrica local no aparelho do usuário. Funciona perfeitamente em Android ou iOS. Porém, no caso desta biblioteca existe uma configuração específica na parte nativa de cada sistema operacional que será instalado.
Para mais detalhes, clique aqui e consulte a documentação.
9. font_awesome_flutter
O plugin Font Awesome Icon nos disponibiliza uma enorme diversidade de ícones para utilizar na aplicação, a lista de ícones disponíveis pode se encontrada aqui.
Sua implementação é simples, como no exemplo abaixo:
Para mais detalhes, consulte a documentação.
10. intro_slider
O Flutter Intro Slider é um plug-in do Flutter que ajuda você a fazer uma intro interessante para seu aplicativo. Criar introdução nunca foi tão fácil e rápido utilizando esse package.
A documentação com os detalhes para implementação e configuração dos parâmetros, pode ser encontrada clicando aqui.
11. bloc_pattern
BLoC significa Business Logic Components. A essência do BLoC é que tudo no aplicativo deve ser representado como fluxo de eventos: widgets enviam eventos; outros widgets responderão. O BLoC fica no meio, gerenciando a conversa.
Este Package ajuda a implementar o Padrão BloC por injeção de dependência em seu projeto. Para mais detalhes de como funciona o padrão BloC, recomendo a leitura deste artigo.
E a documentação do package pode ser encontrada clicando aqui.
12. bottom_navy_bar
A BottomNavyBar é um package que implementa uma bonita e animada BottomBar. A navegação utiliza o tema atual da aplicação, mas que pode ser personalizada pelo desenvolvedor.
A documentação pode ser consultada clicando aqui.
BÔNUS: Slidy
O Slidy é um gerenciador de pacotes CLI e gerador de templates para o Flutter. Gera módulos, páginas, widgets, BloCs e testes. Com a finalidade de estruturar um projeto e manter um padrão. E o melhor, este repositório é mantido e continuado por brasileiros, o pessoal do Flutterando. Inclusive, eu também realizei contribuições pra o desenvolvimento deste projeto.
A estrutura criada com o comando slidy start é a seguinte:
Para mais detalhes do detalhamento do CLI e compreender melhor sua facilidade, consulte a documentação clicando aqui.
Vamos apoiar este projeto e incentivar a comunidade brasileira que trabalha diariamente com a tecnologia, compartilhando conhecimento relacionado a flutter.
Finish!
Se as dicas foram interessantes pra você, ou se tiver alguma dica de algum package não comentado nesse artigo, deixe seu comentário e também não esqueça de deixar seu aplauso ou “clap” aqui no Medium, e me incentive a criar mais artigos relacionados a desenvolvimento de software.
Conecte-se também comigo no LinkedIn, clicando aqui. E acompanhe os projetos no GitHub clicando no link abaixo: