Buscar pacotes, repositórios e categorias de apps

Detalhes do pacotev0.16.1+2

ferry

Ferry é um cliente GraphQL simples e poderoso para Flutter e Dart.

AndroidiOSWebmacOSWindowsLinux
Downloads em 30 dias
2,9 mil
Curtidas
369
Pontos Pub
160

Instalar pacote

flutter pub add ferry

Visão geral do pacote

Orientação gerada a partir de informações públicas. Apenas para referência.

Ferry é um cliente GraphQL leve e eficiente projetado para aplicativos Flutter e Dart. Ele oferece uma interface limpa e segura por tipo para consultas e mutações de dados usando GraphQL, com suporte integrado para cache, gerenciamento de estado e atualizações em tempo real por meio de assinaturas. O Ferry se integra perfeitamente a projetos Flutter e aproveita o sistema de tipagem forte do Dart para garantir correção em tempo de compilação. É ideal para desenvolvedores que buscam uma solução simples, mas poderosa, para interações com GraphQL em múltiplas plataformas.

Casos de uso

  • Buscando dados em tempo real de APIs GraphQL
  • Gerenciando o estado da aplicação com mutações do GraphQL
  • Implementando recursos de primeiro offline com cache
  • Construindo aplicativos escaláveis com Flutter e GraphQL
  • Integração com backends GraphQL em aplicativos web e móveis

Principais recursos

  • Consultas e mutações GraphQL com segurança de tipo
  • Cache e gerenciamento de estado embutidos
  • Suporte para assinaturas e atualizações em tempo real
  • Boilerplate mínimo com geração de código
  • Compatibilidade multiplataforma (Android, iOS, Web, macOS, Windows, Linux)

Indicado para

  • Desenvolvedores Flutter usando GraphQL
  • Aplicativos que exigem sincronização de dados em tempo real
  • Projetos que priorizam segurança de tipo e experiência do desenvolvedor
  • Equipes construindo interfaces de usuário escaláveis e sustentáveis com GraphQL
  • Desenvolvedores procurando uma alternativa leve em vez de clientes GraphQL maiores

Considerações

  • Requer geração de código para uso ideal
  • Dependente da definição do esquema GraphQL
  • Curva de aprendizado para quem está começando com GraphQL
  • Documentação limitada em comparação com alternativas maduras
  • Mais adequado para projetos já comprometidos com a arquitetura GraphQL

README original

Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.

A simple, powerful GraphQL Client for Flutter and Dart

MIT License PRs Welcome Watch on GitHub Star on GitHub Watch on GitHub Discord

Documentation 📖

Features

  1. ✅ Fully Typed: work faster and safer with compile time checks and IDE autocomplete, including fully typed Cache reads and writes.
  2. 🔄 Built-In Code Generators: automatically generated immutable data classes for all your GraphQL Operations and Fragments, based on your schema.
  3. 🌐 Customizable Network Interface: highly customizable network interface using gql_link, allowing you to compose and extend Links.
  4. ✨ Normalized Optimistic Cache: keep data in sync with cache normalization and update your UI instantly with optimistic data.
  5. 💾 Multiple Data Stores: extensible Store interface with built-in MemoryStore and HiveStore (which uses hive for offline persistence).
  6. 📄 Refetch & Pagination: easily update responses with new data or combine multiple responses, allowing for seamless pagination.
  7. 📱 Flutter Widgets: Widgets for Queries, Mutations, and Subscriptions, available out of the box.
  8. 🧈 Smooth: Run queries in a separate Isolate to free up resources on the UI thread

Packages

This repo is a monorepo for ferry and related packages.

Pub Package Description
version package:ferry Stream-based GraphQL Client
version package:ferry_cache Normalized, strongly typed, optimistic cache
version package:ferry_exec Strongly typed GraphQL execution interface
version package:ferry_flutter Flutter Widgets for GraphQL Operations
version package:ferry_generator Dart Type Generator for GraphQL Operations
version package:ferry_store Data Persistence for ferry's cache
version package:ferry_hive_store Hive implementation of ferry_store
version package:normalize Normalization / denormalization of GraphQL data

Categorias

Dependências

Lista de dependências 11 itens

Repositório-fonte

Projetos que usam este pacote