Orientação gerada a partir de informações públicas. Apenas para referência.
fl_query é um pacote do Flutter projetado para gerenciar dados assíncronos com cache embutido, recarregamento automático e invalidação de cache. Ele simplifica a gestão de estado ao lidar eficientemente com busca de dados, estados de carregamento, erros e respostas em cache. Ideal para aplicativos que exigem dados em tempo real ou frequentemente atualizados, reduzindo o código repetitivo e garantindo consistência dos dados no aplicativo. A biblioteca se integra perfeitamente ao ecossistema reativo do Flutter e suporta todas as principais plataformas.
Casos de uso
Atualizações de dados em tempo real
Aplicações com foco em offline
Sincronização de dados da API
UIs dinâmicas com dados assíncronos
Armazenando em cache respostas de API
Atualização automática de dados
Principais recursos
Cache embutido
Recarregamento automático
Invalidação de cache
Boilerplate mínimo
Suporte multiplataforma
Tratamento de erros
Indicado para
Desenvolvedores usando gerenciamento de estado
Aplicativos com chamadas frequentes de API
Projetos que precisam de recursos offline
Equipes que priorizam a produtividade do desenvolvedor
Aplicativos Flutter com conteúdo dinâmico
Considerações
Requer conhecimento dos padrões async/await
Pode aumentar o uso de memória com caches grandes
Mais adequado para frequência moderada a alta de dados
Personalização limitada para estratégias de cache complexas
Não ideal para dados estáticos simples
README original
Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.
Fl-Query
Asynchronous data caching, refetching & invalidation library for Flutter. FL-Query lets you manage & distribute your async data without touching any global state
Fl-Query makes asynchronous server state management a breeze in flutter
Features
Async data caching & management
Smart + effective refetching
Optimistic updates
Automatically cached data invalidation & unneeded query/mutation garbage collection
Infinite pagination via InfiniteQuery
Lazy persistent cache (Uses hive for persisting query results to disk) (optional)
Let's write use a Query now
FL-Query provides a QueryBuilder widget that creates and listens to the specified Query
and re-runs the builder function whenever there's an update
It has 2 required parameters(unnamed) key & builder
To master the fl-query follow the official blog at https://fl-query.krtirtho.dev/blog
Why?
The main purpose of Fl-Query is providing the easiest way to manage the messy server-state part requiring the least amount of code with code reusability & performance
This let's you focus more on those cool UI animations & transitions✨. Leave the boring stuff to fl-query
Q. Isn't FutureBuilder good?
No, of course not. Unless you're from 2013 or your app is a purely offline app
Q. So FutureProvider from riverpod or provider not enough?
Probably yes. Although riverpod@v2 has added a lot of caching related features but still optimistic updates, periodic refetching & disk persistence are missing. Let's not forget about infinite pagination, it's a nightmare😅. In case of provider, same story. It's a great package but it's not ideal for server-state management
Notice Board
We need some bada** coders to write tests and ruin our life🥲
100% coverage is our goal🙃